Pull to refresh
0
0
Константин Садовский @AsmodeusL

User

Send message

Графические оболочки FFmpeg

Level of difficultyEasy
Reading time6 min
Views40K


Считается, что работа в консоли эффективнее GUI по нескольким причинам. Во-первых, там быстрее набирать команды, чем двигать курсором. Во-вторых, на CPU, память и GPU не ложится лишнее бремя графической оболочки, так что любые процессы быстрее выполняются в консоли.

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

FFmpeg — изначально консольная утилита. Но её популярность крайне высока. Поэтому появляются всё новые варианты графических оболочек для FFmpeg, чтобы доступ к инструменту получили абсолютно все пользователи.
Читать дальше →

Поддержка пакетов в стиле Oracle в СУБД Postgres Pro 15 Enterprise

Reading time15 min
Views9.7K

В новой версии своего флагманского дистрибутива Postgres Pro 15 Enterpise, компания Postgres Pro добавила поддержку функциональности пакетов: расширен синтаксис PL/pgSQL и добавлены новые механизмы в среду выполнения хранимых процедур.

В данной статье описана поддержка функциональности пакетов в Postgres Pro 15 Enterpise:

- группировка типов переменных процедур и функций в пакет;

- поддержка секции инициализации пакетов;

- поддержка глобальных переменных пакета доступных в течении всей "жизни" сессии.

Также в статье будут рассмотрены особенности использования пакетов в СУБД Postgres Pro Enterprise.

Читать далее

Странный мир путей файлов в Windows

Reading time6 min
Views76K

Пути файловых систем в Windows страннее, чем можно подумать. В любой производной от Unix системе пути на удивление просты: если нечто начинается с /, то это путь. Но всё совершенно иначе в Windows, которая имеет озадачивающее разнообразие схем составления пути.

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

Стоит заметить, что статья ограничивается только тем типом путей, который видит пользователь приложений Windows (обусловленный Win32 API). Под этим слоем есть ещё больше любопытного, в основном касающегося тех, кто пишет драйверы оборудования и тому подобное.
Читать дальше →

О, «Герои»? Дайте две! Как я писал очередной браузерный клон легендарной стратегии, в который уже почти* можно играть

Level of difficultyEasy
Reading time14 min
Views36K


TL;DR для тех, кому некогда читать™:




Вот как всё начиналось

Linux-порт Far Manager: новости весны 2023

Level of difficultyMedium
Reading time4 min
Views28K

Обычно я пишу статьи об развитии проекта far2l — порта знаменитого Far Manager под Linux, MacOS и BSD (а теперь ещё и Haiku) раз в год. Но иногда случается так, что объем новостей на статью набирается быстрее. Недавно произошло сразу несколько важных событий, поэтому дожидаться конца года не буду, а опубликую самое интересное сразу.

Нас взяли в Debian!

Это, пожалуй, главная новость. К сожалению, в Bookworm мы попасть не успели, так что ждите нас в следующем выпуске, или в Ubuntu 23.10. Да, можно будет делать sudo apt install far2l, без всяких сложностей с ppa или самостоятельной сборкой!

Читать далее

Удивительное рядом. Как устроен буфер обмена в Windows и Linux

Level of difficultyEasy
Reading time6 min
Views24K
Опенсорсная утилита CopyQ показывает содержимое буфера обмена на всех ОС и сохраняет историю

Буфер обмена — один из основных элементов GUI, но он сложен в реализации. Подводных камней настолько много, что вы больше никогда не сможете произнести слово «копипаст» с презрительным выражением. Есть тысячи приложений и форматов данных. Невозможно обеспечить полную конвертацию всего во всё.

В некоторых случаях данные вообще нигде не сохраняются по нажатию Ctrl+C. И по нажатию Ctrl+V будет возвращён NULL. Shit happens, как говорится…
Читать дальше →

Made at Intel. Architecture and religion

Reading time6 min
Views49K

Я подустал от мрачных текстов и вспомнил о своей давней мечте. За 20 с хвостиком лет работы в Интел у меня развеселых историй накопилось на целую книгу. Хотелось в ретроспективе посмотреть на некоторые события, участником которых мне довелось быть. И еще хотелось отдать дань уважения компании и людям, с которыми мне посчастливилось работать. Я уже даже название придумал – Made at Intel. Понятно, что пока я был внутри конторы, речь о публикации этих баек идти не могла. Я сам подшучивал, что для публикации нужно правильно выбрать время. В смысле сначала уволиться, а потом публиковать, а не быть уволенным вследствие публикации. :) Однако примерно 2 года назад я Интел покинул, и казалось бы меня уже ничего не сдерживало. Но тут, как всегда – то перо поломается, то струна порвется, то еще какая бяда приключится. К тому же на то чтобы писать книжку – это же рeшимости набраться надо... И вот – вчера я решил, что большое надо начинать с малого. Буду писать по главке и выкладывать сюда - собирать фидбек. Так мало –помалу и наберется.

Итак, сегодня вашему вниманию представляется первая глава, в которой эволюция архитектур Intel рассматривается с точки зрения ... истории религиозных течений. Да –да, не удивляйтесь, архитектура вычислительных устройств –это одна из самых религиозных вещей. Не думайте, что все решения по Instruction Set Architecture принимаются исключительно на основе анализа данных – это совсем не так. Скорее похоже на средневековое государство – тут есть немного бизнеса, побольше политики и очень много религии. Все просто – почти любой эксперимент в этой области растягивается на годы и обходится в миллиарды долларов. Хуже всего, что в процессе дизайна можно давать лишь приблизительные оценки ключевых характеристик – частоты, производительности, энергопотребления, температурной карты. То, как все оно будет на самом деле становится понятным уже только тогда, когда чип выходит из печки. Да сейчас в этой области уже накоплен определенный опыт и наши оценки становятся несколько точнее, но и только. А 20 лет назад этих знаний было куда меньше. И пионеры, подобные Интел двигались в темноте на собственный страх и риск. Разумеется, в таких условиях на первый план выходит кто во что ВЕРИТ. Ну да – еще кто лучше говорить умеет. Поэтому лучшие архитекторы приходят из школ с углубленным изучением богословия. :)

Читать далее

Made at Intel. Свой среди чужих, чужой среди своих

Reading time10 min
Views38K

2014-й стал переломным годом для моей карьеры в Интел. В начале 2013-го меня назначили генеральным директором по R&D в России – и мне казалось, что теперь все дороги будут открыты. От перспектив сделать что-то хорошее и для Интела и для России за спиной прямо-таки росли крылья. Но не тут-то было.

Год сразу начался по-дурацки — я полетел в Новосиб в легкой курточке и простудился на тамошнем морозе. В Сибири погода вообще коварная. У нас — минус 30 это адский ад из‑за высокой влажности. А там сухо, солнечно, тихо и ощущается как минус 10, в худшем случае минус 15. А на самом деле те же самые минус 30. И в результате вместо поездки на Олимпиаду в Сочи я сидел дома и болел две недели. Ну а потом началось — в конце февраля — начале марта Россия присоединила Крым, а в апреле начались бои на Донбассе. Нас обложили санкциями. Ну и на корпоративном фронте ситуация также резко накалилась. В том году я летал в Штаты 6 раз и провел там в общей сложности четыре месяца, уговаривая интеловый истеблишмент не закрывать бизнес в России. Дамоклов меч повис уже тогда, однако судьбе было угодно дать нам еще 8 лет...

Шок и трепет

Поначалу, как всегда, была паника и неразбериха. Никто не понимал, куда бежать и чего бояться. Вспоминается апрельский диалог с Биллом Сэвиджем – директором Developer Product Division, основным стейкхолдером Интел в России. На него тогда работало у нас человек, наверно, 700. Как сейчас помню, разговор этот состоялся в пятницу, часов в 6 вечера в санта‑кларовском офисе SC12. Обычно амеров в пятницу из офиса «сдувает» в половине 4го. Ну самый край в 4. Но Билл не уходит — переживает отчасти за Россию, но больше за свою карьеру. И мы уже несколько часов гоняем по кругу его страхи — фантомные и реальные.

Читать далее

Made at Intel. Пировали, веселились…

Reading time7 min
Views34K

Всем привет.

Хочу сообщить тем, кто волновался за мою судьбу после опуса о последних днях Интела в России на прошлой неделе, что у меня все хорошо. Я жив‑здоров и работаю все там же ?. Про опус, однако, сказать того же не могу. Людям он неплохо зашел, а вот менеджмент (на обеих сторонах был не в восторге). Так что найти его теперь можно только у меня в телеге. Ну а я возвращаюсь к более ранним дням истории Интел в России. И речь у нас сегодня пойдет о нехитрых развлечениях командировочных.

Случай в «Главпивторге»

В июне 2010го приезжал в Россию ХрИстос Георгиопулос, Vice President of Developer Relations Division, к которой я тогда относился. Он был начальником моего начальника Пареша Паттани. Надо сказать, что мы тогда очень неплохо ладили и это наверно были мои самые счастливые времена в Интел. Христос был этническим греком, вполне православным и даже немного понимающим по‑русски. «Зовите меня просто ХристОс» — говорил он по‑нашему, чем приводил окружающую публику в неописуемый восторг. Так вот 13го июня случился у меня День Рождения. И я повел Христоса, Пареша и еще пару местных коллег в ресторан «Главпивторг» на Лубянке. В то время он мне очень нравился. Сидели — ели, выпивали и праздновали мои 34 (господи, как давно это было). Ну и в конце действа я привычно полез за карточкой чтобы расплатиться. И тут Христос в шутку шлепнул меня по рукам и сказал, что платить должен он, потому что он здесь старший. Я возразил, что не собираюсь вешать ужин на контору, расплачусь сам, потому что это мой день рождения и я сам всех сюда позвал. «Да ладно» — подмигнул Христос, — «Mother Intel заплатит. Все равно мы подарок тебе купить забыли». Так я усвоил, что за столом расплачивается старший по должности. И в принципе, это — правильно, потому что исключает всякие соблазны и лихоимства, когда подчиненный платит за начальника, а тот ему это одобряет. Но иногда случались в жизни исключения из этого правила.

Читать далее

Вы не умеете играть в Героев 3: 13 карт S-размера, которые вы не пройдете за вечер

Reading time11 min
Views65K

Впервые Герои появились в моей жизни лет в 7. Как сейчас помню, зимние каникулы, тётя, старше меня на 16 лет (невероятно взрослая и крутая, слушает Металлику, у нее даже есть косуха), запускает с диска «Герои Меча и Магии III: Полное собрание». Я в предвкушении устраиваюсь сзади на диване, впереди лучшие часы для нас двоих. Для меня Геройский стрим (поиграть меня пустят только через пару лет), а для неё — несколько часов тишины.

За последние 15 лет моя игра в «Герои» не сильно менялась. Ну, сложность повыше, ну, компов побольше. Те же автосгенерированные карты, только сбоку. Если нападать, то на армию не сильно больше моей. Если магия, то жахнуть от души «Цепью молний», на крайний случай «Армагеддон», (если Черные Драконы есть). Но смысл один: строим Ратушу, захватываем Лесопилку, подбираем сундучок, скупаем прирост, отвоёвываем замок у компа. Приелось.

Сразу скачивать карту XXL-убийцу самооценки было стрёмно, а узнать, как играют тру-пацаны — интересно. Оказалось, некоторые картоделы давно уже создают карты-пазлы, с боями на подумать знание поведения ИИ, с использованием багов игры или просто на хитрую логистику. Таких карт-загадок меньше и они не очень популярны, но я нашла 13 шедевров Heroes Might and Magic III S-размера. (Будет очень много скриншотов).

Я веду ламповый Telegram-канал GameDEVils и блог на Substack . Заглядывайте в гости, я делюсь там материалами про геймдизайн, разработку и историю игр ^__^
Читать дальше →

Вы НЕ сошли с ума (о режиме сна в Windows)

Reading time8 min
Views156K

Вы сталкивались с тем, что ноутбук случайно включается, хотя вы уверены, что отправляли его в сон?

Бывало, что батарея оказывалась пустой, хотя вы точно-точно помните, как убирали в сумку заряженный на 100% ноутбук?

Тогда вам сюда:

Мне сюда

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

Reading time23 min
Views241K

Я люблю давать простые задачки студентам на лекции. Во-первых, понятно, скольких мы потеряли, во-вторых, это переключение из режима потребления информации в режим выдачи результатов, в третьих — возможность проявить себя для шустрых. Сплошные плюсы!

Одна из простых задач звучит так: «При переводе картинки из цветового пространства RGB в YUV мы выполняем прореживание, то есть выкидываем каждый четный столбец и каждую четную строку в компонентах U и V (все компоненты пикселя по 1 байту). Вопрос: во сколько раз меньше данных у нас стало?» Эта операция называется chroma subsampling и широко используется при сжатии видео, например.

Забавно, что когда-то давно, когда винчестеры были меньше, а дискеты больше, студенты реально отвечали на этот вопрос быстро. А в последние годы регулярно народ в ступор впадает. Приходится разбирать по частям: «Если выкинуть каждую четную строку и каждый четный столбец, во сколько раз меньше данных будет у компоненты?» Почти хором: «В четыре». Начинаю подкалывать: «Отлично! У нас было 3 яблока, первое осталось как есть, а от второго и третьего осталось по четвертинке. Во сколько раз меньше яблок у нас стало?» Народ ржет, но, наконец-то, дает правильный ответ (заметим, не все). 

Это было бы смешно, если бы от способности быстро в уме прикинуть результат не зависела способность быстрее создавать сложные алгоритмы. 

И хорошо видно, как эта способность в широких массах студентов заметно плавно падает. Причем не только в нашей стране. Придуман даже специальный термин: «цифровое слабоумие» ("digital dementia") — снижение когнитивных способностей, достаточно серьезное, чтобы повлиять на повседневную деятельность человека. 

Кому интересно как теряют мозг студенты масштабы бедствия и что с этим делать — добро пожаловать под кат!

Читать далее

Краткий справочник по «всем-всем» командам Linux

Level of difficultyMedium
Reading time90 min
Views202K

Периодически меня на начальном курсе просят дать "список всех-всех команд с кратким описанием что делает"... Ну прям "всех-всех". И ведь если искать в интернете "такие" справочники существуют - либо про "20-30 команд, но самых важных", либо с неточностями и устаревшей информацией. Так что предлагаю вашему вниманию свою версию такого "краткого" справочника (на 300, 515, 612, 716, 842, 1005,... 1260 команд) с ссылками на wiki-описание и на cheat.sh-примеры наиболее важных команд.

Справочник по всем-всем командам LINUX

Как правильно отвечать на вопрос “Какие у вас зарплатные ожидания?” на рынке США

Reading time6 min
Views69K

На первом интервью чаще всего рекрутер может задать вопрос о зарплатных ожиданиях кандидата — “What Are Your Salary Expectations?”. Я принимаю участие в найме продукт-менеджеров, дизайнеров и инженеров и хочу поделиться с вами своим опытом как правильно отвечать на этот вопрос применительно к рынку США.

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

Читать далее

Пишем тетрис в bat-файле

Reading time5 min
Views25K

В комментарии к моей предыдущей статье, «Какие задачи не решаются bat-файлами?», предположили, что на bat-файлах не получится написать Doom. Насчет Дума я пока не уверен, а вот тетрис у меня получился.

Играть в тетрис бесплатно

Какие задачи не решаются bat-файлами?

Reading time8 min
Views33K

Бат-файлы ведут свою историю со времен MS-DOS. Новые фичи добавлялись с сохранением обратной совместимости. Из-за этого многое в языке bat-файлов, как мы увидим далее, нелогично и неудобно.

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

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

Читать далее

Нарастающий итог в SQL

Reading time10 min
Views152K
Нарастающий (накопительный) итог долго считался одним из вызовов SQL. Что удивительно, даже после появления оконных функций он продолжает быть пугалом (во всяком случае, для новичков). Сегодня мы рассмотрим механику 10 самых интересных решений этой задачи – от оконных функций до весьма специфических хаков.
Читать дальше →

Диалоги с пользователями — истории от техподдержки

Reading time29 min
Views24K
Я работаю в техподдержке небольшого провинциального завода, изредка записываю забавные диалоги с пользователям. Обратил внимание, что более-менее регулярно начал это делать десять лет назад в 2012 году, потому решил частично их опубликовать в честь «юбилея». Это всё я уже выкладывал в интернетах, но не одним списком.

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

Картинки я нечасто делаю, но старался иногда вставлять для оживления.

А потом эти люди пожалуются, что у них принтер не печатает и хвост оттуда торчит:
image

Дальше будет много букв и немного картинок.
Читать дальше →

Погромист. Мои самые эпичные провалы за всю карьеру

Reading time13 min
Views106K

Я люблю критику. Если вы не заметили, я, как старый дед, всё поливаю грязью и всем недоволен.

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

Читать далее

NFT — бесполезная технология

Reading time4 min
Views125K
Среднему человеку очень сложно понять, насколько бесполезны NFT. Мы верим в разумность действий. Если вокруг этой технологии поднято уже столько шума – если это вообще можно назвать технологией – наверное, что-то полезное она делает?

На самом деле нет, она не делает вообще ничего.

Она записывает транзакцию криптовалюты и прикрепляет к ней произвольные данные. И всё. Считается, что эта транзакция наделяет правами владения на прикреплённые данные, но механизма, придающего законную силу этим правам владения, не существует. При этом часто данные представляют собой абстракцию или просто вымышлены. Допустим, вам «принадлежит» пистолет из видеоигры. В реальности этого пистолета может и не существовать. Может не существовать способов носить его с собой, стрелять из него или даже посмотреть на него.

Подобные функции в NFT не зашиты. Они полагаются на внешнюю инфраструктуру, существующую независимо от NFT. Если вам интересно, какую роль при этом играет сама NFT – то никакую. Она отнимает у дурачка его деньги из «Монополии».
Читать дальше →

Information

Rating
Does not participate
Location
Минск, Минская обл., Беларусь
Date of birth
Registered
Activity