Ускорение тест-сьютаРазработка состоит не только из билда: важно уметь и тесты быстро гонять. Самое лучшее что можно сделать это распилить прилу на модули, чтобы каждый модуль можно было со своими тестами запускать. Общему прогону не поможет, но разрабатывать через тесты станет комфортнее. LLM всегда выбирает минимальный размер запускаемого кода, поэтому тоже быстрее отвечать будет. Общий прогон тоже можно ускорить через LLM: запустит прогон, посмотрит на самые медленные тесты, найдет причину и починит. Что у меня нашла:• тесты с продакшен-таймаутами, заменила 1-2 секунды ожидания на ретрай на 0.01, стало быстрее в отдельных тестах.• увидела, что большой оверхед от повторной компиляции кода при запуске отдельных модулей тестов. Созадала тест-план, добавила все таргеты, отчиталась какая молодец, а потом я сказал, что у меня это уже было. Ревертнула. • какие-то первые тесты в которых зависимости еще не умел нормально отделять сделала параллельными. • попробовала запускать не на одном симуляторе, а на четырех. Ускорилось, записала в тест-план. При этом повышенная параллельность тестов родила флаки, починил по путиИтог: прогон тестов ускорился на 63%
Рубанов про мобилу
@RubanovMobile · 4.3K подписчиков
Посты канала Рубанов про мобилу в SillyFeed: единая лента публичных Telegram-каналов со ссылками на оригиналы.
Делюсь своим опытом разработки мобильных приложений: про тестирование, доступность и UI
Посты канала
Правильно поставленный вопросПравильно поставленный вопрос уже содержит в себе половину решения. Недавно снова убедился. На маке Face Replace глючил: видео больше 5 минут часто не могли сохраниться. При этом на айфоне такой проблемы не было. В процессе видео режется на кусочки по несколько секунд, чтобы можно было восстановить сессию в любом месте. В конце все кусочки склеиваются, но я иногда получал ошибку, потому что файл не смог сгенерироваться. Причем ошибка максимально тупая в духе AVFoundationErrorDomain - 11800 — An unknown error occurred (-17913) - Caused by: Error Domain=NSOSStatusErrorDomain Code=-17913 "(null)". Я раз за разом уточнял детализацию ошибок, но мне это не помогло. В целом, ресерч показал, что кусочки видео куда-то пропадают, поэтому файл не создается. Но куда? Мой код их не удаляет, очистка будет после создания полного файла. Сегодня осенило вопросом: а куда сохраняются промежуточные кусочки видео?Оказалось, что в папку документов, а она синхронизируется с облаком. Генерация длинных видео занимает часы, iCloud видит новые файлы которые никто не использует, но кто-то активно пишет на диск, поэтому и выгружает файлы в сеть. Когда дело доходит до сохранения, то кусочки уже пропали.Подвинул сохранение из документов в кеш, все заработало. Уже зарелизил фикс, но жаль что голову ломал две недели.
Вайбкодинг в самолете с телефонаЯ писал весь этот текст пока летел из Буэнос-Айреса в Алматы. Перелет из Сан Пауло в Доху занимает 15 часов: ужасно долго, хорошо что сижу у прохода. Раньше это было 15 часов мучения, а сейчас я искренне кайфую: • ноут лежит в портфеле,• на ноуте запущен терминал с клодом,• клод через старлинк ходит куда-то на сервер антропиков и пишет код• по проводу подключен айфон, сборки можно устанавливать только так,• на телефоне запущен клод в ремоут режиме: я отдаю команды, клод пишет, комп собирает, я на телефоне тестирую. Чтобы комьютер не выключался во время процессинг я прописал sudo pmset -a disablesleep 1Два ужасных минуса:• когда клод закончил он не присылает пуш (и это мешает мне писать этот текст, приходится вручную провкрять статус)• у меня всего один провод, поэтому приходится перетыкать между телефоном и зарядкой ноута.- бонус: в конце перелета начали бомбить Доху, из-за чего пришлось сесть в Каире и через Стамбул добираться. Итого 50+ часов на перелет
Ещё по теме «Карьера и маркетинг»
Карьера и маркетинг⏰ Когда лучше постить резюме на hh.ru?Утром каждого дня. 🌅Обновление резюме — это не просьба, это сигнал рынку:📍 я здесь📍 я активен📍 я не сплюЧем чаще ты обновляешься, тем выше ты в выдаче. Система любит активных. 📈Если ты обновляешься раз в неделю — ты падаешь на дно базы, и тебя просто не видят. 👎💡 Важно: не надо обновлять резюме просто так. Меняй хоть один пункт, чтобы система видела изменение. Но даже если ничего не меняешь — само действие обновления поднимает тебя. 🔥💬 Если нужен совет — пиши, звони и подписывайся на мой канал!👇 Контакты📞 +7 926 009 9240🌐 chepacareer.ru📱 t.me/chepacareer📧 [email protected]🎬 youtube.com/@ChepaCareer📸 instagram.com/chepa_career📘 vk.com/club235515583Подписывайся и будь на виду у рекрутеров! 🚀Всегда ваш,Роман Чепа
В Амстердаме такой выбор великих музеев живописи, что просто гулять вокруг и около - уже удовольствие. Скоро прогулка по музейному кварталу появится на нашем с вами канале.Начинать, наверное, стоит с Государственного музея. На трёх этажах неоклассического кирпичного здания размещаются не только картины фламандских и голландских художников XV-XX вв., но и готические предметы мебели, средневековая скульптура, китайский и мейсенский фарфор, искусство нидерландских колоний, резные изделия из слоновой кости, собрание статуй Будды, изящные французские табакерки, модели кораблей, делфтские изразцы и многое, многое другое. Собрание в Государственном музее действительно потрясающее – все с детства знакомые имена: Вермеер, Рубенс, Халс, Стейн, Pембрaндт...#амстердам #рейхсмузей #музейныйквартал #зоткингид



Как делать классный дизайн с Claude CodeНе надо писать «Ты Джонни Айв» или «сделай как у Apple»Вместо этого — даёте ему готовый DESIGN.md файл, где уже описано всё, что обычно формулируют размыто:— цвета— типографика— отступы— правила компонентовНашел подборку 2000+ DESIGN.md файлов топовых сайтовВыбираете тот, который нравится, вставляете в свой Клод или Кодекс — и получаете классный дизайнhttps://styles.refero.designUPD: в комментах подсказывают еще опцииhttps://getdesign.mdhttps://impeccable.style
Всю первую половину дня в Москве был заблокирован мобильный интернет. Я прочитал о предстоящей блокировке в новостях ещё вчера, но не придал этому значения. Вышел из дома и быстро понял, что всё не так, как обычно. Сначала не открылась карта транспорта в телефоне, и я ждал на остановке автобус, не зная, когда он придёт. Затем у меня не загрузился мобильный банк, и не получилось расплатиться в автомате метро через систему быстрых платежей. Расписание электричек тоже было недоступно. Подобные злоключения то и дело преследовали меня до того времени, пока мобильный интернет не заработал. Конечно, за последние десять-пятнадцать лет мы привыкли к электронному комфорту, и интернет стал нашим незаменимым спутником. Мы уверены, что так будет всегда. Но сегодняшний день показал всю зыбкость наших привычек. Обстановка в мире, увы, неспокойная, и дальше будет ещё сложнее. Нам надо быть готовыми к тому, что, возможно, придётся жить без интернета не полдня, как сегодня, а неделями и даже месяцами. И тогда мы на некоторое время вернёмся к бумажным книгам, проводным телефонам, а может быть, и письма будем писать ручкой на бумаге, запечатывать их в конверты и бросать в почтовые ящики. Дети станут играть у подъезда в классики, резиночку и прыгать со скакалкой. Кстати, сегодня у меня была с собой в портфеле книжка, и я за то время, что не работал интернет, дочитал её до конца.
Брендинг в рекламном ролике Flamenco1/8На рекламных проектах клиенты, как правило, хотят видеть как можно больше брендинга. Меня это нисколько не смущает, я очень люблю интегрировать бренд-элементы и айдентику в сюжет. И если это уместно, то чем больше продукта и брендинга, тем лучше - поиск нативного, но читаемого брендинга вообще классное упражнение, я еще покажу на примере других проектов, как это может быть реализовано и, где тут связь с дизайном в кино. Это может быть реализовано на нескольких уровнях: заметном сразу, заметном при повторном просмотре и оказывающих воздействие через периферийные образы, имеющие накопительный эффект. Безусловно, важен жанр, тип, формат истории и соответствующий подход, чтобы все это смотрелось органично. Экспертиза режиссера как раз необходима, чтобы усилить базовое сообщение, сделать его эффектным, но эффективным, зрелищным, но ясным. В конце серии этих постов покажу синематик, который шел вместе с брифом, и вы увидите, как выглядит работа режиссера по адаптации изначальной идеи. На этом проекте, если в двух словах, задача была, сделать современную вечеринку Гэтсби, где все крутиться вокруг образа томатов и бренда Flamenco. Конечно, в том масштабе, который позволит бюджет. И в следующих постах я покажу, как из небольшого набора правильно подобранных и эффективно используемых инструментов, грамотно выстроенной мизансцены, собирается общий план, создающий впечатление высокобюджетного проекта, демонстрирующий масштаб и качество производства, это то, что часто называют продакш вэлью. По сюжету девушка попадает на необычную вечеринку, пробует вкуснейший красный томат и начинается феерия. Через призму ее ощущений после укуса мы видим, как действие приобретает еще более яркий характер,и через ассоциативный ряд и аллегорию раскрываются вкусовые качества продукта. Разработка вселенной и устройства мира в кино один из самых важных и интересных для меня этапов работы. Занявшись роликом для Flamenco, я искал способы с первых секунд погрузить зрителей в мир Flamenco и сделать так, чтобы присутствие бренда и продукта было максимально органичным и в рамках жанра уместным. С учетом ограничения хрона, типичного для любой рекламы, большинство решений должны были быть архетипичными, легкосчитываемыми, но без уникальных фишек, конечно, не обошлось.#реклама #flamenco
Если не хватает мотивации и денегЭто текст для терапевтов, но для людей из других профессий подойдут эти мои размышления.Психотерапия в принципе и гештальт-терапия в частности может быть хобби или профессией. Хобби — для души и удовольствия, по приколу и все такое. Профессия — для денег. Любая, в том числе наша. Но у нашей профессии есть сложность: работать в этой сфере не имея к ней душевной склонности и не находя в ней удовольствия и возможностей для развития, долго, качественно и за хорошие деньги не получится. Не все профессии этого требуют. Наша требует.Но вернусь к хобби. Ничего плохого в том, чтобы сделать психотерапию своим хобби нет. Просто нужно, чтобы был другой источник дохода.У меня другого источника дохода нет.Возможно, у вас тоже. И возможно, вы тоже терапевт. Поэтому приходится все сразу — и зарабатывать, и для души, и с возможностями саморазвития, потому что иначе в нашей профессии никак.Иногда, особенно у юных коллег, я встречаю две крайности: или излишнее пренебрежение к деньгам или излишнюю фиксации на них. И то, и другое приводит или является следствием нарушения динамики фигуры и фона. Очень важно замечать, что профессия приносит деньги и связанные с ними возможности. И не только возможности пойти на еще одну супевризорскую группу, но и купить новое платье, внести взнос по ипотеке или наконец-то купить кофе. Деньгам стоит уделять внимание, замечать их. Радоваться, когда их стало больше. Грустить, если меньше. Почему нет-то?Иначе происходит размытие: ясной фигуры нет, а есть что-то с чем-то, в чем нет возбуждения и импульса. Но не стоит слишком фиксироваться на деньгах. Потому что тогда наоборот — мало внимания фону, слишком фиксированная фигура, а потому неподвижная, без развития, сжатая, а не энергичная. Этот гештальт не складывается, а застрял комком. Деньги — это прекрасно, они питают, поддерживают, заставляю радоваться и грустить, но… а что еще?Нет, нет, не финансовые цели. Точнее не только они. Да, ездить в отпуск, да, купить авто, да, сделать зубы всей семье…А что еще? Зачем все это?Извините, за громкое слово — а миссия-то в чем?Что я хочу изменить в этом мире к лучшему?Что я хочу сделать такого классного?Нам нужны оба фокуса. Точнее все фокусы нам нужны. И ни одним не стоит брезговать. И ни на одном не стоит фиксироваться. И миссия. И личные долгосрочные цели. И финансовые краткосрочные. И мороженку пойти съесть. Еще такое встречаю, что мол я хочу не из страха, а из развития двигаться. Ну, типа морковка спереди, а сзади. Не надо пренебрегать ни одним видом мотивации. Если у вас сейчас морковка сзади, горит под хвостам и нечем платить за квартиру, и это очень вас мотивирует, то прекрасно. Фигачьте на этом топливе. Если у вас закрыты базовые потребности, дух захватывает от открывающихся возможностей, а сердце выпрыгивает из груди от вдохновения — чудесно. Фигачьте на этом. Если вы нашли большую несправедливость и вас вдохновляет пилить обличающий контент — ради бога. Если хотите утереть нос вот той заразе, которая унизила вас, и это помогает вам вас сворачивать горы — ну, вы поняли.Если хочется денег и вообще очень хочется, но не очень получается, то…Во-первых, может и получается, просто вам мало. Во-вторых, может и получается, но вы на тревоге переинвестируете в профессию — точно нужно еще одну обучение?И в третьих, а может хочется не только, может, пора обратить внимание на что-то побольше и подольше?Может, ваша мотивация где-то там? Где большие цели и миссии?А если наоборот, денег не хочется, а хочется великого или даже ничего, то посмотрите на то, что помельче: новые кроссовки, обновить телефон, все-таки в о пуск поехать и поехать туда, куда хочется, а не куда хватает…И последнее. Больше обучений — не всегда больше денег. Важно научиться оставлять деньги себе, а не постоянно их вкладывать в свое развитие, надеясь на отложенное удовольствие. Пост написан по мотивам рабочей встречи в МИГе, где мы обсуждали курс по развитию практики и продвижения для гештальт (и не только) терапевтов.
Метрики успеха юриста Чем мне нравится групповой коучинг, так это тем, что через чужие запросы и ситуации калибруешь собственные представления о мире и корректируешь жизнь. Уже который год жизни я говорю себе — сейчас лучшее время, чтобы поработать, еще год-два, а потом можно снизить темп. И этот «год-два» не проходят, они так и тянутся, конца и края нет. И есть чувство отложенной жизни — сейчас не вовремя, вот еще что-то сделаю и потом можно… Таких отодвигающих причин десятки, а может быть и сотни. Лет пять назад на коучинге мы разбирали колесо баланса. Казалось бы, вопрос проработан и можно бы его закрыть. А вот он вернулся немного в другом ракурсе, оказалось — что не проработан до конца и не закрыт. Если силой не держать фокус сразу на разных сферах жизни, то на автомате всё скатывается в привычный паттерн. У каждого он свой. У меня — работа. Мы даже пошутили, что это социально одобряемая «дурная привычка» сродни зависимости. Только вместо сигарет/алкоголя/сладкого ты запойно занимаешься работой. 🗣 Юлия Михальчук

Кто найдёт в этом ролике «действия сексуального характера без обоюдного согласия» закину 1000 токенов на СинтексПоясняю - только что ютуб снёс мне этот ролик годичной давности по причине, которую написал выше.Подал апелляцию - сказали НЕ, всё равно видим элементы секса.Тут даже борцы за традиционные ценности проржали
Слушайте, я стал меньше писать полезных вещей, потому что занят тем, что, как маленький ребенок, реализую все штуки, которые всю жизнь хотел реализовать.Например, свой трекер.Я много раз пытался пользоваться готовыми: один быстрый, второй удобный, третий красиво выглядит. Но когда нужно быстро скинуть мысль, разобрать её, привязать к проекту, не потерять контекст и потом вспомнить, что я вообще хотел сделать, всё превращалось в ручную возню.А ручная возня — это ровно то, от чего таск-трекер обычно и умирает.Поэтому я собрал свою версию: inbox-first трекер. Я пишу обычным языком, система кладёт всё во входящие, разбирает через LLM и предлагает карточки на review. Из одного куска текста могут получиться задача, заметка, напоминание или несколько объектов сразу.Сейчас уже есть Web/PWA, inbox, разбор через OpenRouter с fallback на обычный parser, задачи, заметки, напоминания, области, проекты, уведомления, browser push, Telegram-уведомления, API для внешней постановки задач и публичная ссылка, которую можно дать человеку.Дальше хочу довести то, ради чего всё это и затевалось: голосовой ввод, постановку через Телеграмм, пересланные сообщения, нормальное сжатие, исправление формулировок и автоопределение проекта, области, срочности и важности.Короче, делаю трекер для людей, которые не хотят вести трекер. Кажется, это ровно мой случай.

