Как стать автором
Обновить

Все потоки

Сначала показывать
Порог рейтинга
Уровень сложности

Алгоритмы быстрого умножения чисел: от столбика до Шенхаге-Штрассена

Уровень сложности Средний
Время на прочтение 26 мин
Количество просмотров 171
Python *Алгоритмы *Математика *

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

И уж конечно, никогда при написании a * b мы не задумываемся о том, как реализовано умножение чисел a и b в нашем языке. Какие вообще есть алгоритмы умножения? Это какая-то нетривиальная задача?

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

Скорее к формулам!
Всего голосов 4: ↑4 и ↓0 +4
Комментарии 0

Новости

Как без денег и знаний в AI повторил Copilot'а

Уровень сложности Простой
Время на прочтение 2 мин
Количество просмотров 339
Python *Искусственный интеллект
Из песочницы

Создаём своего Copilot'а без знаний в AI и денег.

Читать далее
Рейтинг 0
Комментарии 1

9 баз данных NoSQL, актуальных на 2023 год

Время на прочтение 7 мин
Количество просмотров 754
Блог компании OTUS NoSQL *
Перевод

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

В случае использования баз данных NoSQL можно хранить и извлекать данные без необходимости предварительно определять схему БД. Они также позволяют одновременно хранить различные типы данных, а не разделять их по разным таблицам в зависимости от их типа, как это часто происходит при работе с базами данных SQL.

Читать далее
Всего голосов 5: ↑3 и ↓2 +1
Комментарии 0

Сегментация LULC спутникового изображения RGB с использованием FCN-8

Уровень сложности Средний
Время на прочтение 17 мин
Количество просмотров 104
Искусственный интеллект Геоинформационные сервисы *
Аналитика
Перевод

В данной работе представлено использование Полной сверточной сети (FCN-8) для семантической сегментации спутниковых изображений земной поверхности высокого разрешения в формате RGB на категории землепользования.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 1

Истории

Про микросервисы на примерах

Уровень сложности Простой
Время на прочтение 5 мин
Количество просмотров 555
Блог компании Альфа-Банк Python *Анализ и проектирование систем *Микросервисы *
Обзор

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

И так, эта статья не для разработчиков и опытных архитекторов, а для аналитиков, которые хотят понять, а что же такое микросервисы на самом деле. Пример здесь максимально простой и не претендует на хороший стиль написания кода, чтобы его запустить не нужно обладать вообще никаким ИТ‑бэкграундом и не нужно настраивать никакие IDE.

Приступим?
Всего голосов 5: ↑4 и ↓1 +3
Комментарии 0

Как «яжепрограммист» построил всю свою родню

Уровень сложности Средний
Время на прочтение 13 мин
Количество просмотров 1.6K
Блог компании RUVDS.com Алгоритмы *Графический дизайн *Научно-популярное Социальные сети и сообщества

Всем привет. Разумеется, это шутка — я своих родственников очень люблю, уважаю и никоим образом их не притеснял и не планирую. Более точная формулировка — отсортировал в целях построения генеалогического древа. Об алгоритме построения, сортировки, визуализации фамильного древа и будет эта статья.
Читать дальше →
Всего голосов 7: ↑7 и ↓0 +7
Комментарии 6

Как настроить OpenVPN на Debian 11. Часть 1

Время на прочтение 11 мин
Количество просмотров 1K
Блог компании Southbridge Настройка Linux *Информационная безопасность *Системное администрирование *Разработка под Linux *
Туториал
Перевод

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

Вы можете использовать платный VPN или создать и администрировать собственный. В этой статье разбираем, как настроить OpenVPN на Debian 11.

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Комментарии 4

Как не «сломать» вёрстку Flutter-приложения из-за textScaleFactor

Уровень сложности Простой
Время на прочтение 4 мин
Количество просмотров 230
Блог компании Surf Программирование *Разработка мобильных приложений *Flutter *

Иногда на смартфоне неожиданно «ломается» вёрстка приложения, при этом в эмуляторе всё работает корректно. Рассказываем, в чём может быть причина.

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Комментарии 0

Написал свой сервис для удаленного управления компьютерами

Уровень сложности Простой
Время на прочтение 3 мин
Количество просмотров 2.5K
Системное администрирование *DevOps *
Из песочницы

Всем привет.

Я работал админом около 12 лет, за всё время для целей администрирования пользовался почти всеми известными программами для удаленного доступа, сначала TeamViewer - после внедрения их политики лицензирования и обновления, мягко говоря неудобной и жуткой дорогой (около 30 т.р. в год), пересел на AnyDesk — который был чуть хуже в плане функционала, но более терпим в плане использования, и немного меньшей ценой — около 20 т.р. за год. Но душа всё-таки не была довольна, не хватало многих функций, автоматизации, да и порой было неудобно/лень договариваться о подключении с пользователем, что бы выполнить пустяковое действие. И так пришла на ум идея создать инструмент от админа админу, что бы и интерфейс устраивал, но не был перенасыщен, и разобраться мог любой человек более менее владеющий компьютером.

Читать далее
Всего голосов 11: ↑11 и ↓0 +11
Комментарии 7

И самые лучшие книги они в рюкзаках хранят…

Время на прочтение 5 мин
Количество просмотров 775
Блог компании FirstVDS Криптография *Занимательные задачки Алгоритмы *

В этом топике продолжим тему решения криптографических загадок с MysteryTwister. Ранее уже были опубликованы статьи навеянные задачами с этого ресурса («Угнать SIGABA за 24 часа», часть 1, часть 2). На этот раз возьмём задачу, основанную на классической «задаче о рюкзаке». Автор задачи Peter Uelkes. По этому вопросу на Хабре много статей (уместные я размещу внизу топика), но сегодня мы разберём конкретную задачу дешифровки.

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Комментарии 0

Свежий Android на 9 летнем железе: Сможет ли смартфон 2016 года оставаться актуальным в 2023 с кастомной прошивкой?

Уровень сложности Простой
Время на прочтение 9 мин
Количество просмотров 1.9K
Блог компании Timeweb Cloud *nix *Разработка под Android *Гаджеты Смартфоны
Туториал
Ребята из Google проделали огромную работу по популяризации Android на массовом рынке поспособствовали и появлении смартфонов в самых разных ценовых сегментах. Ведь разработка своей мобильной ОС — это многомиллионные вложения, плюс серьёзные проблемы совместимости (вспоминаем нулевые и подбор асек и игр под экраны/платформы). Однако годы идут и несмотря на довольно долгую поддержку предыдущих версий Android, со временем даже флагманы умудряются устаревать, чего уж говорить о девайсах среднего сегмента. В качестве подопытного, у нас выступит бюджетный смартфон Samsung Galaxy J5 на Android 6 Marshmallow. Сегодня мы с вами: немного вспомним историю моддинга девайсов, накатим кастом без сервисов Google и узнаем, способен ли смартфон с железом 9 летней давности стать устройством на каждый день. Интересно? Тогда добро пожаловать под кат!

image
Читать дальше →
Всего голосов 17: ↑14 и ↓3 +11
Комментарии 8

Зависимость вероятности успеха проекта от его размера

Уровень сложности Простой
Время на прочтение 1 мин
Количество просмотров 490
Управление проектами *
Ретроспектива

Недождавшись очередного Chaos report от The Standish Group я решил провести собственное исследование распределения вероятности успеха проектов в зависимости от их размеров и проанализировал результаты порядка 2000 (конечно не 50 000, как у The Standish Group, но все же) проектов за последние 5 лет, выполненных в проектном офисе, которым я руковожу.

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

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

И вот какие результаты я получил:

Читать далее
Всего голосов 5: ↑3 и ↓2 +1
Комментарии 4

Произвольное вращение линейного градиента SwiftUI

Время на прочтение 2 мин
Количество просмотров 156
Разработка под iOS *Swift *
Перевод

В рамках предстоящей функции Widgetsmith я хотел рисовать линейные градиенты. Я делал это бесчисленное количество раз, используя замечательный стиль заливки LinearGradient. Это прекрасно работает и может легко встраиваться в множество различных форм и ситуаций в SwiftUI.

Однако всякий раз, когда я использовал их раньше, я использовал только встроенные значения direction (направления):.top,.topTrailing,.leading и т. д. И, если быть честным, это были единственные варианты, которыми я располагаю.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 0

Знакомство с Velociraptor

Уровень сложности Средний
Время на прочтение 5 мин
Количество просмотров 731
Информационная безопасность *
Из песочницы

Если такие понятия как DFIR, Threat Hunting, Security Monitoring, для вас не пустой звук, то эта статья будет вам интересна. Я расскажу про утилиту Velociraptor, которая часто помогает мне в работе. К моему удивлению, на Habr даже нет упоминания про нее, попробую это исправить. 

Velociraptor (github, docs) - согласно официальной документации это утилита для выполнения Digital Forensics and Incident Response (DFIR) задач. Но из практики можно сказать, что это настоящий швейцарский нож для сбора и анализа информации с конечных устройств (серверов и рабочих станций). 

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Комментарии 0

Боевой прокси-сервер Squid 5.2 с нуля ч.3

Уровень сложности Средний
Время на прочтение 5 мин
Количество просмотров 831
Настройка Linux *Системное администрирование *Сетевые технологии *
Туториал

Конфигурируем Squid 5.2 и включаем в работу.

Часть 3. Скорости, доступы.

Читать далее
Всего голосов 4: ↑4 и ↓0 +4
Комментарии 7

[Пятничное] 10 зрелищных клеточных автоматов с поколениями

Уровень сложности Простой
Время на прочтение 4 мин
Количество просмотров 1.1K
Программирование *Алгоритмы *Читальный зал Дизайн Научно-популярное
Обзор

Я смотрю на это уже 5 часов дней. Это прекрасно.

На прошлой неделе мы посмотрели на 10 правил простейших клеточных автоматов, где меняли только количество соседей необходимых для рождения и выживания клетки.

Сегодня немного дополним характеристики «life‑like» модели и добавим ещё одну часть к правилам — поколения.

👾
Всего голосов 15: ↑15 и ↓0 +15
Комментарии 1

Дела сердечные: индивидуальная настройка искусственного сердца

Время на прочтение 11 мин
Количество просмотров 302
Блог компании ua-hosting.company Разработка робототехники *Научно-популярное Здоровье


Люди обладают рядом физиологических, психических, когнитивных, физико-химических и других особенностей, которые в совокупности и формируют основные признаки Homo sapiens. Ввиду эволюционных и генетических факторов каждый человек по-своему уникален. И эта уникальность проявляется не только во внешних особенностях, но и в работе внутренних систем. К примеру, сердце человека является одним из важнейших органов, который выполняет одни и те же функции, независимо от его владельца. Однако его форма, размеры, режим работы и даже положение могут отличаться от человека к человеку. Следовательно, в процессе разработки искусственного сердца для определенного человека необходимо учитывать особенности оригинала. Именно этим и занялись ученые из Массачусетского технологического института (США). Они разработали методику создания мягкого и гибкого роботизированного сердца на 3D принтере с возможностью точной настройки того, как именно оно будет работать. Из чего сделано искусственное сердце, как именно оно настраивается, и насколько точно оно имитирует оригинал? Ответы на эти вопросы мы найдем в докладе ученых.
Читать дальше →
Рейтинг 0
Комментарии 0

Вспомнить всё: проводим ретроспективы для удалённых команд

Время на прочтение 9 мин
Количество просмотров 723
Блог компании Ozon Tech Управление разработкой *Agile *Управление персоналом *Удалённая работа

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

Читать далее
Всего голосов 17: ↑17 и ↓0 +17
Комментарии 2

Автоматизируй это: как мы упрощаем создание проектной документации в нефтянке (часть 2)

Уровень сложности Средний
Время на прочтение 9 мин
Количество просмотров 927
Блог компании РН-БашНИПИнефть Программирование *Карьера в IT-индустрии Софт IT-компании
Кейс

В первой части мы рассказывали, как нефтяные компании создают проектно-технические документы (ПТД) на разработку месторождений, насколько это большая, трудоемкая и очень рутинная работа. Причем, помноженная на десятки выполняемых проектных документов в год. Умножим это количество документов на несколько разных сценариев, которые по закону мы должны рассматривать в каждом проекте, и получим просто колоссальный объем работ.

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Комментарии 1

Samoyed CMG — установка и генерация сайта

Уровень сложности Простой
Время на прочтение 7 мин
Количество просмотров 484
Разработка веб-сайтов *PHP *
Туториал

В прошлой статье была описана теория CMG (Content Management Generator). Основная идея — генерация кода сайта на основе настроек заданных кодом. Т.е. фактически кэширование всех настроек в коде при генерации, а не при развертывании на хостинге.


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


Читать дальше →
Всего голосов 3: ↑2 и ↓1 +1
Комментарии 0