Как стать автором
Обновить
4
0
Владимир @Vanada

Пользователь

Отправить сообщение

«По вертикали и по горизонтали»: как перенести бумажные сканворды в онлайн, чтобы решать с друзьями на удаленке

Время на прочтение9 мин
Количество просмотров4.1K

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

Как оцифровать сканворд по фотографии? Насколько сложно сделать систему общего доступа? Действительно ли интересно разгадывать бумажные сканворды на электронном устройстве? Ответы на эти и другие вопросы — под катом.
Читать дальше →
Всего голосов 51: ↑51 и ↓0+64
Комментарии9

Как я создал 175 шрифтов при помощи Rust

Уровень сложностиПростой
Время на прочтение19 мин
Количество просмотров4.8K

В декабре 2023 года я выпустил 175 Pixel Font Megapack, за которым вскоре последовали 42 отдельных пака для каждого из семейства шрифтов. Я создал собственный тулчейн для генерации, тестирования и развёртывания этих шрифтов... на Rust! В посте я расскажу об этом процессе.

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

Чиним замедление YouTube на уровне роутера

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров531K

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

Что случилось?

Хорошо описано произошедшее здесь, на Хабре. Если совсем кратко, своими словами - во время установки SSL соединения в открытом виде домен передается к которому мы подключаемся(так называемое SNI). И если это googlevideo.com то начинают твориться "интересные вещи". Можно проверить это локально коммандами из статьи.

$ curl https://speedtest.selectel.ru/100MB -o/dev/null

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

Пишем за неделю 3D-редактор на C

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров9.1K
Прошлой осенью я участвовал в недельном мероприятии по программированию Wheel Reinvention Jam. Смысл этого джема заключается в том, чтобы взглянуть по-новому на уже существующие программные системы. Я написал для него 3D-редактор под названием ShapeUp. Пост будет понятнее, если вы сначала посмотрите видео-демо ShapeUp. Можно попробовать ShapeUp в браузере.

Вот, как он выглядит:

Майк Вазовски!

3D-редактор


Я ненавижу тормознутость компилятора Typescript (поверьте, это относится к теме статьи). Джем показался мне подходящей возможностью реализовать более быстрое подмножество Typescript, обгоняющее по скорости tsc. Мне показалось, что проект можно реализовать, если начать с парсера Typescript esbuild or Bun. Но потом ко мне пришло понимание, что успешный результат будет выглядеть как команда терминала, выполняющая работу быстрее другой. Не особо впечатляюще в качестве демо. Мне хотелось создать крутое демо, поэтому я выбрал 3D.
Читать дальше →
Всего голосов 50: ↑45 и ↓5+60
Комментарии7

Волшебный чемоданчик c инструментами создания графики для продуктового дизайнера

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров7.3K

Всем привет! Меня зовут Гриша Ковалёв, я продуктовый дизайнер в Альфа-Банке. Люблю пробовать новые инструменты и проверять их на прочность.

Были ли у вас задачи, где нужно было подготовить графику? Например, нарисовать баннер для акции: «Отправим всем по резиновой уточке» или «Защити свой аккаунт от мошенников»? Было что-то такое? Предполагаю, что с большой долей вероятности, ответ будет «да». У меня тоже такие задачи появлялись в бэклоге. И сегодня я расскажу, как подобные задачи можно выполнить нестандартно.

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

Черепаха в лабиринте: Медлительное путешествие к свободе

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров2.2K

Задача

Дан связный прямоугольный лабиринт n\times m клеток, одна из которых обозначена как выход. В произвольной клетке появляется черепаха, и она может перемещаться в четырех направлениях (вверх, вправо, вниз, влево).

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

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

Расположение стенок лабиринта и клетки "выход" известны заранее, а вот начальное расположение черепахи неизвестно.

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

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

Почти все, что вы хотели бы знать про Docker

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров55K

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

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

Читать далее
Всего голосов 65: ↑60 и ↓5+65
Комментарии57

Как загрузить, установить Office 2024 LTSC с сайта Microsoft и активировать навсегда?

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров223K

Десять лет назад я писал пару статей - Как загрузить последний Office с сайта Microsoft без всякого App-V / Хабр (habr.com) и Как загрузить Microsoft Office 16 с сайта Microsoft / Хабр (habr.com), при помощи на тот момент еще мало кому известным Office Deployment Tool.

Время бежит стремительно, за Office 2016 выходит Office 2019, Office 2021, и вот сейчас подошло время для Office 2024. Что ж, посмотрим, что поменялось в плане загрузки, установки и активации продукта за десять лет.

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

Microsoft давно перешел на систему распространения продуктов семейства Office по разным, так называемым, "каналам" (channels), в зависимости от того как часто вы хотите получать нововведения и обновления.

Ключевым отличием в текущей загрузке и установке Office от того, что было актуально во времена Office 2016, является то, что вы должны определить, каким каналом распространения вы собираетесь пользоваться, - то есть с какого канала собираетесь устанвливать сам продукт. Тем, кто хотел бы подробно изучить разные каналы распространения я предложу почитать первоисточник - Обновления Office - Office release notes | Microsoft Learn. Остальным кратко резюмирую - Microsoft сейчас предпочитает всем продать подписку на Microsoft 365 (то, что ранее называлось Office 365), с регулярно обновляемыми возможностями в течении так называемой Современной политики жизненного цикла. По этой же современной политике распространяется пользовательские (коробочные, ретейл) версии Office 2021. Office 2021, например, поддерживается лишь до 13 октября 2026. А более старые версии следуют, так называемой политике фиксированного жизненного цикла, в рамках которой Office 2016 и Office 2019 поддерживаются лишь до 14 октября 2025. В целом, они не перестанут работать после, однако, перестанут обновляться. И у тех из вас, кто пользуется почтовыми сервисами на базе Microsoft Outlook.com или Office365, а возможно и пользователям Microsoft Exchange, с обновлениями выпущенными после 14 октября 2025 уже пора призадуматься об обновлении.

Читать далее об установке Office 2024
Всего голосов 166: ↑157 и ↓9+173
Комментарии250

Устанавливаем и применяем Docker на Repka Pi

Уровень сложностиПростой
Время на прочтение16 мин
Количество просмотров2.8K

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

Если можно на любой, то давайте запустим Docker на микрокомпьютере Repka Pi российской разработки и сборки, оснащенной ОЗУ объемом 2 ГБайт. Прочитав нашу статью, вы научитесь использовать Repka Pi для изучения всех основных возможностей Docker, а также создавать приложения Docker, работающие с оборудованием через GPIO и I2C.

Мы расскажем, как установить Docker на Repka Pi, как с помощью двух команд запустить WordPress, как работать из контейнера Docker с пинами GPIO микрокомпьютера, а также напишем программу, получающую данные с погодной станции BME280 через интерфейс I2C.

Зачем Docker нужен на микрокомпьютерах

Установка Docker на Repka Pi

Установка WordPress

Создаем контейнер для работы с GPIO

Контроль и освобождение ресурсов

Загрузка образа контейнера на Docker Hub

Контейнер для работы с I2C

Полезные ссылки

Итоги

 

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

Основы DNS: понятие, иерархия, записи

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров25K

DNS (Domain Name System) – это система, которая переводит понятные человеку доменные имена в IP-адреса, которые используют компьютеры для связи друг с другом. Представьте, что DNS – это как телефонная книга интернета. В обычной телефонной книге, если вам нужно найти номер телефона человека, вы ищете его по имени, и книга предоставляет вам номер. Точно так же DNS помогает находить IP-адреса, когда вы вводите доменное имя.

Когда вы вводите адрес веб-сайта, например, www.example.com, в строку браузера, DNS помогает найти нужный IP-адрес, чтобы ваш браузер мог подключиться к нужному серверу. IP-адрес – это уникальный числовой идентификатор, который используется для идентификации устройства в сети. Всякий раз, когда вы отправляете запрос на веб-сайт, ваш браузер отправляет этот запрос через интернет на сервер, который затем отвечает данными, которые вы видите на экране.

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

Как заставить Docker работать в России и Беларуси (самое простое и быстрое решение)

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров33K

Вчера, 30 мая 2024 года, Docker без предупреждений заблокировал доступ к DockerHub для РФ, что для проектов стоящих в продакшене на Docker стало серьёзным форс-мажором и проблемой, сборка проекта так, как это было раньше, стала невозможной. Статья - простой доступный гайд как эту проблему решить

Узнать решение
Всего голосов 37: ↑30 и ↓7+25
Комментарии82

.NET Aspire — империя дотнета наносит ответный удар

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров32K

Когда я первый раз услышал про .NET Aspire, я подумал что это какая-то очередная лажа от Майкрософта, про которую все забудут через неделю.

Особенно, учитывая какую дичь часто завозят в шарп (например те же ужасно спроектированные Primary Constructor'ы про которые я писал, или вот прикол-пропозал от самого Тоуба). Так что ожидания у меня, честно говоря, были ниже нуля.

Но попробовав его лично, я был, честно говоря, шокирован. Трепещите, жависты!! Трепещите гошники! Трещепищите питонисты - такого вы еще точно не видели.

Я даже представить не мог, что DevEx можно сделать настолько офигительным.

Узнать про Aspire без смс и регистрации
Всего голосов 38: ↑36 и ↓2+42
Комментарии51

Как написать свой клиент для YouTube, не привлекая внимания санитаров

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров22K

Привет, Хабр! Когда‑то давно я наткнулся на ролик, где парень писал консольный клиент для YouTube. Идея была просто потрясающей!

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

Стоит ли говорить о том, что такое решение сильно теряет в производительности и абсолютно нежизнеспособно на какой‑либо длительный период времени?

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

Как сделать виртуальную АТС на базе VPS

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров10K


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

В каждом офисе установлена мини-АТС, которая коммутирует внутренние звонки. Телефоны сотрудников подключаются к коммуникационному шкафу или коробочке с Asterisk (как на КДПВ), а она подключена к телефонной сети общего пользования (PSTN или ТСОП). Таким образом, сотню офисных телефонов можно повесить на один внешний номер. В общем, мини-АТС — совершенно необходимая вещь.

Виртуальная или облачная АТС (hosted PBX) — это услуга для компаний, которая заменяет им обычную офисную АТС. Вместо того, чтобы покупать специализированное телекоммуникационное оборудование или выделять отдельный компьютер с Asterisk, они заказывают услугу на удалённом хостинге. И этот компьютер с Asterisk (IP-АТС) физически размещается у провайдера. Таким образом, виртуализация добралась и до АТС, всё в русле современных тенденций.
Читать дальше →
Всего голосов 23: ↑21 и ↓2+30
Комментарии45

Личное планирование. Именно «личное»

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров19K

Я нашел свою систему «Личного планирования», о чем я поделился в этой статье и передаю этот опыт студентам курсов по менеджменту в Практикуме.

В этой статье расскажу:

— Зачем начинать планирование в начале дня,
— Почему нужно ограничивать количество задач и блокировать время для их выполнения,
— Какие приложения помогают отслеживать продуктивность,
— Зачем подводить итоги дня и анализировать свою эффективность.

Какие практики можно использовать?
Всего голосов 27: ↑22 и ↓5+20
Комментарии15

Compiler Explorer — уникальный проект для исследования компилируемого кода

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров12K
Этот пост посвящён замечательному инструменту, полезному для каждого, кто интересуется компиляторами или архитектурой компьютеров. Это Compiler Explorer, который я в дальнейшем будут называть CE.

CE — потрясающий инструмент. Если вы с ним не знакомы, то прервите чтение и перейдите на веб-сайт CE, где вы увидите примерно такой экран:

Предупреждение: вы забираетесь в «кроличью нору», на которую можете потратить несколько часов своего времени.


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

CE поддерживает 69 языков, более двух тысяч компиляторов и широкий спектр архитектур, включая x86, arm, risc-v, avr, mips, vax, tensa, 68k, PowerPC, SPARC и даже древний 6502.

То есть теперь для просмотра результата работы компилятора достаточно открыть godbolt.org и скопировать туда блок кода.

Это само по себе удивительно, но у CE есть гораздо больше возможностей. Это инструмент, который должны знать все интересующиеся компиляторами и архитектурами компьютеров. В статье мы сможем лишь поверхностно рассмотреть функции CE. Вам стоит самим перейти на сайт CE и попробовать всё самостоятельно.
Читать дальше →
Всего голосов 65: ↑63 и ↓2+80
Комментарии13

Моё лучшее вложение 13 тыс. рублей (какой ботаник без микроскопа?)

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров20K


Сидел я тут недавно перед монитором и размышлял чем бы себя ещё порадовать, а надо сказать, что порадовать меня не так просто (смайл). Долго я размышлял и решил остановить свой выбор на… микроскопе. Почему бы и нет? У меня уже давно стояло в планах оснастить лабораторию подобным инструментом.

И вот этот девайс неожиданно не просто меня порадовал, а вызвал настоящий вау-эффект. Это реально просто обалденная штука (простите за мой французский) и у меня возник только один вопрос — почему я не купил его раньше?

Далее я попробую простыми словами описать что это такое и приведу примеры фото и видео с этого микроскопа, после которых вы всё бросите закажете себе такой же (или даже лучше).
Читать дальше →
Всего голосов 75: ↑73 и ↓2+96
Комментарии62

Деплой .NET приложений для самых маленьких. Часть 0

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров9.9K

Давным-давно, когда Linux был ещё на ядре 2.6, а PHP5 был глотком свежего воздуха, я впервые заинтересовался миром веб-технологий. Читал учебники, статьи, зависал на форумах, но все равно мало мог понять как код, который я вижу на экране, превращается в волшебные сайты с кнопками, формами и анимациями. Узнал про LAMP и его аналоги для Windows, узнал, что, оказывается, есть хостинги, где такие сайты размещаются. Как только появился внешний интернет без трафика, я поспешил перенести свои локальные поделия во внешний мир, попутно узнав про замечательный протокол FTP. Просто мир волшебных открытий был для меня, особенно когда узнал, что не нужно писать свой форум с нуля, а можно использовать что-то из phpBB, vBulletin и других уже готовых движков.

И когда я много лет спустя переключился в мир .NET, перечисленные ранее умения сыграли со мной злую шутку – я долго не мог понять, как мне найти хостинг для .NET приложений. Почему все известные мне хостинги с лёгкостью предоставляли возможность развернуть PHP приложения, причём даже предлагая какие-то предустановленные версии CMS, но днём с огнём не сыщешь хостинг под .NET. Мое непонимание принципа развертывания приложений усугубляли статьи, которые предлагали их размещать в подходящих сервисах типа Heroku, Digital Ocean или Azure – ведь это так просто и дешево…

Поэтому предлагаю максимально подробно рассмотреть вопрос публикации .NET приложений в арендованном VPS.

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

От падений базы данных до кибератак: история о том, как мы обнаружили взлом

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров8.6K

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

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

Для дома и офиса: 5 моделей мини-ПК, позволяющих решать разные задачи

Время на прочтение4 мин
Количество просмотров13K

Производители электронных устройств продолжают выпускать все новые и новые модели. Миниатюрные ПК — вовсе не исключение. Кажется, что это разнообразие просто бесконечно. В подборке — модели, которые привлекли мое внимание по какой-либо причине. Например, производительность, необычный корпус или что-то еще. Все самое интересное — под катом.
Читать дальше →
Всего голосов 30: ↑28 и ↓2+37
Комментарии39

Информация

В рейтинге
Не участвует
Откуда
Томск, Томская обл., Россия
Дата рождения
Зарегистрирован
Активность

Специализация

Software Developer
Junior
Git
OOP
.NET
C#
Software development
Object-oriented design
Visual Studio
Windows Forms
WPF