Ставим котю на ноги
Короче, сделал столетний блокбастер цветным
Синопсис
Раскраска фильмов до этого года стоила сотни тысяч долларов, требовала участия массы специалистов и занимала много времени. Теперь всё изменилось. Развитие проекта Deoldify дошло до такого состояния, что результаты его работы можно комфортно смотреть, расслабив фейспалм. Из текста вы узнаете подробности успешного эксперимента по оцветнению фильма без денежных затрат, завершенного за несколько недель силами одного человека.
Инженерный подход к подаркам
За окном дождь, на календаре декабрь. Близится пора праздников, а значит и пора подарков. Коллега Павел желает себе новый ноутбук, а подруга Маша хочет домик у моря. И несмотря на достойный оклад профессии “тыжпрограммист”, мы не живём в мире бесконечных возможностей, а значит я не могу подарить этим людям именно то, чего они хотят больше всего (даже несмотря на то, что Паша может быть мой самый лучший Павел, которого я знаю, а Маша просто молодец).
Тут и появляется проблема “дешёвых подарков”. Подарить дорогой подарок всем не получается, а дарить очередную коробку конфет, свечку или невнятную статуэтку бог_пойми_чего просто не хочется. Значит нужно объединить приятное с полезным — я люблю делать вещи своими руками, а полученный результат отлично подходит в качестве подарка. Это рассказ о том, как я в очередной раз прикидывался инженером и рукожопил несколько подарков.
Истории
Как спроектировать корпус для прибора. Полное руководство
Изучая рунет, я не смог найти ни одной статьи, которая описывала бы ВСЕ этапы разработки и производства корпуса устройства.
Ни одной. Всё, что есть в интернете, касается лишь одного или двух аспектов этого процесса. Ну например: давайте набросаем корпус и распечатаем на 3D-принтере. Или купим типовой и насверлим в нём отверстий. Хотя на Хабре и есть пара материалов, но они тоже не так полны информацией, как могли бы быть.
Но так, чтобы были расписаны все этапы, от идеи до серийного производства, — я такого не нашёл. Поэтому решил написать своё руководство, максимально наполненное фактами, картинками и примерами.
Как спроектировать корпус — схема работы
Вы почти наверняка можете спроектировать корпус для своего устройства самостоятельно. Главное — хорошо представлять себе весь цикл, от идеи до производства.
Разработка корпуса — процесс, разбитый на несколько обязательных этапов. Это даже обсуждать не буду: проверено много раз. Даже если вы не собираетесь связываться с «большим» производством (например, если планируете делать устройство только для себя), всё равно лучше бы вам соблюдать правильную последовательность этапов.
А для сомневающихся в своих силах скажу сразу — вы точно сможете разобраться во всем этом: программное обеспечение шагнуло далеко вперёд, и сейчас не нужно тратить несколько лет, чтобы поставить себе на стол первый прототип корпуса.
Вот схема, по которой мы пойдем:
Пишем USB-драйверы для заброшенных устройств
Недавно на eBay мне попалась партия интересных USB-девайсов (Epiphan VGA2USB LR), которые принимают на вход VGA и отдают видео на USB как веб-камера. Меня настолько обрадовала идея, что больше никогда не придётся возиться с VGA-мониторами, и учитывая заявленную поддержку Linux, я рискнул и купил всю партию примерно за 20 фунтов (25 долларов США).
Получив посылку, я подключил устройство, но оно даже не подумало появиться в системе как UVC. Что не так?
Я изучил сайт производителя и обнаружил, что для работы требуется специальный драйвер. Для меня это была новая концепция, ведь в ядре моего дистрибутива Linux обычно есть драйверы для всех устройств.
Вымирание компьютерных файлов
Новомодные технологические сервисы меняют наши интернет-привычки.
Я люблю файлы. Мне нравится переименовывать их, перемещать, сортировать, изменять способ отображения в папке, создавать резервные копии, выгружать их в интернет, восстанавливать, копировать и даже дефрагментировать их. Как метафора способа хранения информационного блока, я думаю, они великолепны. Мне нравится файл как единое целое. Если мне нужно написать статью, она окажется в файле. Если мне нужно выдать в свет изображение, оно будет в файле.
Щирый украинец Незнайка или Как киевляне не угадали
Недавно общался с одним знакомым игроделом, и тот на полном серьезе убеждал меня, что главная причина сегодняшнего кризиса игровой индустрии — отсутствие запоминающихся образов. Раньше, мол, в хороших игрушках были образы, которые мертво залипали в памяти у пользователя — даже чисто визуально. А сейчас все игры безликие, неотличимые, сплошной «корея-стайл», потому и проваливаются одна за другой.
А я вспомнил, как — уже одним из последних — брал интервью у нашего великого художника-мультипликатора Анатолия Савченко, который сделал «Петю и Красную шапочку», «Вовку в Тридесятом царстве», «Карлсона», «Щелкунчика», «Возвращение блудного попугая» с толстым котом и попугаем Кешей и множество других культовых мультфильмов.
Я его спросил, что самое трудное в работе художника-постановщика, а он даже не думал, а сразу сказал — придумать образы. Тут ничего тебе не поможет — ни мастерство, ни опыт — ничего. Можно позвать лучших художников — и провалиться, а можно студентов нанять — и в десятку влупить!
Оригинальный, запоминающийся образ — это самое сложное. У меня, говорит, на это уходило больше всего времени и сил. Но, с другой стороны, это и самое благодарное. Если ты угадал с образом — он тебя будет кормить не годами даже — десятилетиями. Я, говорит, в 1954 году, сразу после смерти Сталина, придумал Мойдодыра для мультфильма Иванова-Вано.
И мне, говорит, до сих пор Procter & Gamble за стиральный порошок «Миф» доплачивает — очень, говорит, весомая прибавка к моей невеликой пенсии получилась.
А все почему?
Доброшрифт
Рендеринг текста вас ненавидит
- 1. Терминология
- 2. Стиль, вёрстка и форма зависят друг от друга?
- 3. Текст — это не отдельные символы
- 4. Эмодзи ломают цвет и стиль
- 5. Сглаживание — это ад
- 6. Эзотерика
- 6.1. Шрифты могут содержать SVG
- 6.2. Символы могут быть чертовски большими
- 6.3. Выделение — это не рамка, а текст идёт во всех направлениях
- 6.4. Как написать то, что невозможно написать?
- 6.5. Стиль является частью шрифта (за исключением случаев, когда это не так)
- 6.6. Нет идеального текстового рендеринга
- 6.1. Шрифты могут содержать SVG
- 7. Дополнительные ссылки
Рендеринг текста: насколько сложным он может быть? Оказывается, невероятно сложным! Насколько мне известно, буквально ни одна система не выводит текст «идеально». Где-то лучше, где-то хуже.
Предположим, вы хотите произвольный текст с произвольными шрифтами, цветами и стилями, с переносом строк и поддержкой выделения текста. По сути, это минимальные требования для правильного отображения сложного текста, окна терминала, веб-страницы и т. д.
В общем, сразу скажем: здесь нет последовательных правильных ответов, всё намного важнее, чем вы думаете, и всё влияет на всё остальное.
Мы обсудим темы, которые не объединяются в рамках какой-то единой концепции, это просто вопросы, с которыми мне пришлось столкнуться за несколько лет работы над рендерингом текста в Firefox. Например, не будем слишком подробно обсуждать проблемы сегментации текста или управления различными текстовыми библиотеками для конкретной платформы, поскольку этим я не слишком интересуюсь.
Почему для открытия меню Windows читает один файл сто тысяч раз?
«Проводник тратит 700 мс на то, чтобы открыть контекстное меню панели задач. 75% этого времени он выполняет 114 801 операцию считывания из одного файла, средний объём считываемых данных 68 байт.
Мне стоит написать пост об этом, или достаточно саркастичного твита?»
За компьютером я работаю быстро, и поэтому меня раздражает, когда приходится ждать завершения операции, которая должна выполняться мгновенно. Постоянной помехой на моём сверхмощном домашнем ноутбуке стало медленное закрывание окон на панели задач. Я нажимаю правой клавишей на значок, жду, пока откроется меню, а затем выбираю «Закрыть окно». Самым медленным в этом процессе должны быть перемещения мыши, но выясняется, что наиболее долгим компонентом оказывается задержка перед появлением меню.
Это напрягало меня уже давно, но я проявлял нехарактерный мне самоконтроль и удерживался от раздражения. Так было до сегодняшнего дня, когда я наконец сорвался и схватился за трассировщик ETW.
Этот пост написан как проверка скоростного блогинга. От момента нахождения проблемы и саркастичного твита о ней до публикации поста прошло примерно 90 минут.
Russian Railway Simulator (RRS): первый публичный релиз
Пассажирский поезд на станции Ростов Главный (кликабельно)
Что такое RRS? Это открытый кроссплатформенный симулятор подвижного состава колеи 1520 мм. Читатель закономерно задаст вопрос: «Позвольте, а для чего нужен этот проект, если симуляторов железнодорожной тематики, как коммерческих, так и открытых, достаточное количество?» За ответом на этот вопрос я и предлагаю заглянуть под кат
Разработка кода не глядя
Я думаю, что большинство читателей не имеют проблемы со зрением, но задумываются, что случится, если зрение откажет. Здесь должна быть картинка, но я её не вижу, поэтому интересующихся, как кодить, не глядя на экран, прошу под кат.
Ближайшие события
Про котэ, жену, двух сыновей, идею… и не только. История с продолжением
В публикации будет 25 фото, 5 не очень тяжелых гифки и много текста.
Предыстория
(скажу честно, она уже мелькала на сторонних ресурсах, однако, для понимания о чем речь, хотел бы озвучить предысторию, для уважаемых Хабровчан, да простят меня админы.
Ну как говорится, поехали!
Мои дети, не обремененные усиленным отцовским воспитанием, забывают смывать за собой в туалете. В основном это происходит ночью т.к. добираются они до унитаза в полудрёме. Этого состояния хватает на — немного разлепить глаза, не споткнуться о кошек и доковылять до туалета. Ругай не ругай, без толку. Я понимаю что можно и подзатыльник влепить, но люблю я их и это не наш метод. Утреннее амбре, испаряющихся продуктов жизнедеятельности, присутствовало в туалете, почти каждый день. С мыслью — пусть мир прогнется под нас, начал искать решение.
Японские интерфейсы в реальном мире
Вот, например, гуляете вы около небоскрёба в центре города. А потом поднимаете голову и понимаете, что ресторан с первого этажа небоскрёба выращивает себе травы в небольшом парке рядом:
А вот термометр. Они здесь часто круглые, и при этом есть цветовая индикация.
Обратите внимание, в этой гостинице уставка 20 градусов, и это создаёт большую часть времени удобное положение стрелки для перфекциониста.
Как делать сайты в 2019 году
Веб стремительно меняется, не отставай и ты!
Я писал подобную статью в 2018 году, но веб меняется так быстро, что те гайдлайны уже безнадёжно устарели.
Давайте-ка шаг за шагом разберём важнейшие принципы веб-дизайна в 2019 году.
Обязательно дайте пользователю знать, что у сайта есть мобильное приложение
Это важнейший принцип, и на то есть свои причины. Фокус-группы, на которые мы уже потратили кучу денег, показали что первое же, чего захочет пользователь попав на ваш сайт — установить мобильное приложение.
Ну а кратчайший путь к этому — показать здоровенное модальное окно:
В качестве необязательной опции можно добавить кнопку или ссылку, чтобы закрыть это окно, но принципиально важно, чтобы текст на ней был слабо различим и сформулирован так, как будто пользователю должно быть стыдно отказываться или он ещё захочет установить приложение в будущем.
Совет: Если у вас нет мобильного приложения, не беда! Просто запихните весь сайт в webview с отключенной безопасностью и пишите, что это мобильное приложение!
Уличная магия сравнения кодеков. Раскрываем секреты
В этом году исполняется юбилей — 16 лет, как был запущен сайт compression.ru, на котором автор и сотоварищи организуют сравнения видеокодеков и кодеров изображений. За это время были проведены десятки сравнений с отчетами от 23 до 550+ страниц, количество графиков в последнем сравнении перевалило за 7000, а количество разных феерических случаев за это время окончательно превысило все разумные пределы. Поскольку следующая круглая дата (32 года) наступит еще нескоро, есть желание рассказать в честь юбилея малую толику феерического.
Если говорить про кодеки, то не секрет, что большинство сравнений и графиков, которые видит почтеннейшая публика — это продукт отдела маркетинга. В лучшем случае — графики грамотно делали инженеры, а маркетинг только давал добро на публикацию. В худшем случае инженеры вообще не участвовали в их подготовке.
При этом тема сжатия весьма популярна. В сериале «Кремниевая долина» стартап главного героя разработал гениальный алгоритм, который в последней серии первого сезона показал невероятное сжатие 3D видео и в итоге теперь миллионы стартаперов (и инвесторов) мира знают, что главное — это чтобы коэффициент Вайсмана был побольше и ещё гения надо найти, а остальное — фигня-вопрос. Чудо будет! Это естественным образом увеличивает ожидание чудес и, конечно (КОНЕЧНО!) эти чудеса радостно демонстрируются компаниями! В том числе с использованием последних достижений уличной магии.
DISCLAIMER: Любые совпадения имен и названий компаний ниже с реальными именами и названиями абсолютно случайны.
Усаживайтесь поудобнее! Обещаем, что к концу рассказа вы сможете показывать подобные фокусы сами, как, впрочем, и раскрывать многие из них. Поехали!
В этой статье слишком много воды
, — cпросили меня. «Да не вопрос! Конечно, смогу», — ответил я, но голос предательски задрожал. «А, еще и на Unity?», — и мне стало понятно, что впереди очень много работы.
Я у мамы не инженер
Я уже сбился со счёта часов, которые я потратил на то, чтобы сделать “небольшую коробочку” и вдруг я поймал себя на мысли, что я очень зауважал инженеров — людей, который умеют и могут проектировать и создавать новые вещи. В голове сразу нахлынули воспоминания об устройствах, который я разбирал в детстве (да и не только). Эти забавные ситуации, когда при откручивании последнего болтика, как чёрт из табакерки, вылетало несколько мелких пружинок и деталек, которые было совершенно невозможно упаковать обратно.
Однажды я решил сделать небольшое устройство (“Security Access Tuner” из игры Alien: Isolation) — контроллер, экран, пара элементов управления, да упаковать это всё в небольшой корпус, который планировалось напечатать на 3d принтере. Тогда я ещё и подумать не мог, сколько же времени потребуется, чтобы все эти мелочи собрались в одно целое…
Под чёрным флагом пост, или Как я не выложил ваш видеокурс на трекер
Привет, Хабр! В трудное время мы живем, не находите? Люди эгоистичны, не признают ценность чужих трудов, любят приходить сразу на все готовое. Интеллектуальная собственность для многих вообще выглядит не более чем бюрократической шуткой: «Как же это так, информация должна быть свободной, ведь это ИН-ФОР-МА-ЦИ-Я!!!11». Согласен, в идеале это так. Эти ваши анархии, мятежнические настроения и философии андерграундных хакеров/пиратов, стоящих на страже прав простого люда, мне не чужды. Но парадокс в том, что истинная справедливость – это еще и отплачивать всем за их труд и заслуги, поэтому в большинстве случаев пиратство – антагонистическое предприятие. Но вот политика предоставления услуг по защите интеллектуальной собственности, предлагаемая таким замечательным вендором, как ИнфоПротектор, вызвал у меня праведный гнев.
Под катом история о том, как я приобрел платный видеокурс, выпал в осадок после осознания того, что я не смогу сохранить видеоролики из оного для повторного просмотра в будущем, разозлился на тех, кто скропал этот квазизащитный софт (который, ко всему прочему, безжалостно лагает и жрет много ресурсов машины) и решил немного восстановить справедливость… Не нарушая закон, конечно же. Amen.