Как стать автором
Обновить
20
0
Борис Кафтанатий @kaftanati

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

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

Затыкаем рот Windows 10

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


Windows 10 очень любит Интернет. Обновления, синхронизации, телеметрия и ещё куча разной другой очень нужной ЕЙ информации постоянно гуляет через наши сетевые соединения. В «стандартном» сценарии использования, когда Windows 10 управляет домашним или рабочим компьютером, это, в общем-то, терпимо, хотя и не очень приятно.

Однако жизнь сложная штука и не ограничивается только стандартными вариантами. Существуют ситуации, когда подобная сетевая активность операционной системы (ОС) нежелательна и даже вредна. За примерами далеко ходить не надо. Попробуйте подключить к Интернету давно не используемый резервный компьютер, собранный на старом железе. Пока софт на нём не обновится, использовать его будет практически невозможно, всё будет дико тормозить и еле шевелиться. А если вам в этот момент нужно срочно что-то сделать?

Для того чтобы подобного не происходило, необходимо «заткнуть рот Windows», то есть сделать так, чтобы она самостоятельно перестала «стучаться» в Интернет, устанавливать обновления и заниматься прочими непотребствами. Вот именно этим мы с вами и займёмся.
Читать дальше →

Игровая камера: сборник приемов

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

Сегодня мы узнаем:

- можно ли считать людей, которые инвертируют оси в играх, лицами с нетрадиционной ориентацией;

- что такое фокусное расстояние объектива и для чего оно нужно;

- какой угол обзора надо делать у камер, чтобы монитор выглядел, как окно в виртуальный мир;

- как правильно фотографировать;

- и сделаем простенький симулятор дрифта.

Погнали!

Простая схема динамических указателей поворотов, и никаких микроконтроллеров

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

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

Читать далее

Android-разработчикам: как сократить время реализации тёмной темы с пары месяцев до недели

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

Привет, меня зовут Влад Шипугин, я Android-разработчик в Redmadrobot. В этой статье я хочу поделится опытом реализации темной темы, создания удобного UI Kit, как для разработки, так и для дизайнеров. Я расскажу про использование Material Components и работу с Vector Drawable. Также вы узнаете, как быстро поддержать режим edge-to-edge с использованием Window Insets и познакомитесь с моей библиотекой — edge-to-edge-decorator.

Читать далее

Советы по работе с Gradle для Android-разработчиков

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

Всем привет! Я пишу приложения под Android, в мире которого система сборки Gradle является стандартом де-факто. Я решил поделиться некоторыми советами по работе с системой с теми, у кого нет чёткого понимания, как правильно структурировать свои проекты и писать build-скрипты.


Объектно-ориентированный Gradle. Настраиваем Build types в Android, используя Kotlin DSL

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

В этой статье мы поговорим о том, как наша команда перешла на Kotlin DSL для описания Gradle файлов, и как в итоге мы получили типы сборок, описанные классами и имеющие общий интерфейс.

Читать далее

Полдюжины правил для статического анализатора Detekt

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

Техлид Android-команды KODE Дмитрий Суздалев выпустил полноценный опенсорс-проект: набор улучшений для статического анализатора Kotlin-кода Detekt, которые обучают его проверять соблюдение различных правил при использовании библиотеки Jetpack Compose.

Набор правил попал в еженедельный Compose Newsletter, так что теперь самое время поделиться им с сообществом Хабра.

Читать далее

Как мы используем фича-флаги в мобильном приложении QIWI Кошелек

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

Привет, Хабр! 

Меня зовут Василий Материкин, я — Android-разработчик в QIWI. В этом посте я расскажу о применении фича-флагов в QIWI Кошельке.

Внедрение Trunk-Based Development и Feature Flags

В процессе работы над большими приложениями, в которых много фич и над которыми трудится большая команда разработчиков, часто приходится сталкиваться с такой проблемой как конфигурация приложения помощью фича-флагов. Мы в QIWI столкнулись с этим два года назад, когда в QIWI Кошельке было создано несколько feature-команд. Выяснилось, что разрабатывать новые фичи с помощью стандартных feature-веток не так удобно, потому что когда над одним проектом работает несколько feature-команд, ветки становятся достаточно объёмными. Потом смержить их в мастер становится довольно непростой задачей, появляются постоянные конфликты. 

Поэтому мы решили перейти на Trunk-Based Development (TBD). TBD предлагает работать в небольших ветках и, желательно, чтобы они как можно быстрее были влиты основную ветку. Для этого, конечно же, реализацию нового функционала нужно оформлять небольшими пулл-реквестами, чтобы они быстро проходили ревью и были влиты в основную ветку. Это, в свою очередь, создает другую проблему — когда в главной ветке может появиться код, который ещё не готов к релизу, но при этом нам нужно как-то релизить с этим кодом приложение. Мы же релизы выпускаем достаточно часто. И для этого TBD предлагает пользоваться такими подходами, как Branch by Abstraction (BBA) и Feature Flags (FF).

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

Читать далее

Первый советский вокзал, созданный в конструктивизме

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

Вид 1932 года, видно ресторан на крыше

Сегодня мы бы назвали конструктивизм «UX-driven development». Потому что здания проектировались исходя из научной обоснованности функциональности. Оптимальные маршруты передвижения людей, лаконичность форм, предельная функциональность — при развитии стиля мы бы получили идеально оптимизированные города будущего.



Есть такое Иваново, когда-то известное как город невест (потому что там были стратегические швейные производства и в годы после ВОВ был большой дисбаланс по демографии). Потом — как город текстиля: сейчас оттуда берётся бельё «Икеи» и туда организуют шопинг-туры за простынями и пододеяльниками. Но до войны, как утверждают краеведы, рассматривался вариант сделать из крупного производственного центра столицу РСФСР (условно, Москва была бы столицей СССР, а самая большая республика в составе управлялась бы из Иваново). Правда это или нет, идут споры, потому что с источниками как-то бедновато. Но в Иваново зачем-то построили вокзал под пассажиропоток, в десятки раз превышающий уже имевшийся. И это был не просто вокзал, а первый советский вокзал, всем вокзалам вокзал. Храм прогресса, науки и победы пролетариата.

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

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

Стоп рефакторинг. Kotlin. Android

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

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

Я хочу рассказать про практики, которые не один раз уже выручали нас в проекте. Подборка примеров получилась не на пустом месте, все реальные примеры PullRequest-ов.
Все примеры НЕ выдуманные и тестировались на живых людях. В процессе сбора данных несколько людей пострадало.

Читать далее

Рецепт раствора для омеднения любых поверхностей

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

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

Оптимизация сборок Android приложений: ProGuard, D8, R8. Тайны обфускации

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

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

Читать далее

Делаем машину для намотки тороидальных катушек на базе Arduino

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


Перевод с сайта Electric DIY Lab

Всем привет, представляю вам изготовленную мною машину для намотки тороидальных катушек на базе Arduino. Машина автоматически наматывает проволоку и поворачивает тороид. В качестве интерфейса я использовал энкодер и ЖК-экран 16×2. Пользователь может вводить такие параметры, как диаметр катушки, количество оборотов и угол намотки.

В данной статье я расскажу, как построить эту машину и дам подробности её работы.


На видео всё подробно описано – можно посмотреть его или прочесть статью.

10 советов схемотехнику

Время на прочтение20 мин
Количество просмотров124K
Недавно один мой знакомый, начавший интересоваться электроникой и схемотехникой, обратился ко мне с просьбой дать ему какие-то практические советы по разработке электронных устройств. Поначалу этот вопрос немного озадачил меня: как-то так получилось, что для себя я никогда не выделял какие-то перечни обязательных правил проектирования, всё это было у меня где-то на уровне подсознания. Но этот вопрос послужил хорошим толчком для того, чтобы сесть и сформулировать хотя бы небольшой список таких рекомендаций. Когда все было готово, я подумал, что, возможно, это будет интересно почитать кому-то еще, таким образом и получилась данная статья.


Читать дальше →

Big Clock One Love

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

BigClock.jpg


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


Сидеть в самоизоляции и полумраке — та ещё перспектива. Так светодиодная лента и картонные упаковки из Икеа на ресайклинг стали отличным условием «дано» для светодиодного табло, которое я полюбил.

Какого табло?

Как улучшить производительность вашего Flutter приложения

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


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

Читать дальше →

450 бесплатных курсов от Лиги Плюща

Время на прочтение19 мин
Количество просмотров71K
image


Информационные технологии позволяют получить невероятно крутые образовательные ресурсы в один клик. Бесплатно.

Я сейчас решаю задачу, как из огромной массы жизненно важного контента выбрать тот, который стоит попробовать в первую очередь, как «разметить данные», чтобы нейросеточка у подрастающего поколения обучилась более эффективно. (ontol.org, «Выгорание», «Удаленка», телеграм-канал).

Предлагаю вашему вниманию полную подборку всех бесплатных курсов от Лиги Плюща.

Лига плюща (The Ivy League) — ассоциация восьми частных американских университетов, расположенных в семи штатах на северо-востоке США. В состав лиги входят: Брауновский университет (Brown University), Гарвардский университет (Harvard University), Дартмутский колледж (Dartmouth College), Йельский университет (Yale University), Колумбийский университет (Columbia University), Корнеллский университет (Cornell University), Пенсильванский университет (University of Pennsylvania), Принстонский университет (Princeton University).

Эти университеты выпустили около 500 онлайн-курсов, 450 из которых сейчас доступны.

Оглавление


Computer Science (37)
Data Science (18)
Программирование (8)
Гуманитарные науки (80)
Бизнес (72)
Art & Design (20)
Наука (32)
Социальные науки (74)
Здоровье и медицина (32)
Инженерия (15)
Образование и преподавание (21)
Математика (14)
Личностное развитие (7)

Читать дальше →

Инфографика средствами Excel и PowerPoint. Часть 2

Время на прочтение12 мин
Количество просмотров24K
Не жди поездку в Гагры!
Давид Маркович, сериал «Ликвидация»

Всем привет!

За время карантина все, наверное, не по разу прочитали о том, как плодотворно А.С. Пушкин провел свой период «заточения», названный впоследствии «Болдинской осенью», поэтому не буду объяснять, что именно меня сподвигло написать следующую статью об инфографике средствами MS Office.

К тому же, мне есть что вам еще рассказать, ведь я более 10 лет преподаю и руковожу группой разработки учебных материалов в учебном центре «Сетевая Академия ЛАНИТ», а также являюсь автором курса по инфографике.

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

Читать дальше →

Разряды “Гризли” или супер дрель

Время на прочтение5 мин
Количество просмотров25K
В этой статье хочу рассказать об электрических разрядах, которые способны грызть различные металлы и стали. Речь пойдет в основном про электроэрозионную обработку.

Учим нейросети в Google Таблицах

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

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


Читать дальше →

Информация

В рейтинге
Не участвует
Дата рождения
Зарегистрирован
Активность