One Man Android Army в SweepBright
  • Офлайн DOU Mobile Meetup. Львів

    О, а ще спікером бути можна?

  • Створюємо гнучкі компоненти на Compose

    Нема за що, тут просто довго її публікували, хоча і була першою зробив 😅

  • Впровадження дизайн-токенів, або як ми нарешті запустили dark mode

    Очі бояться, а руки — роблять.
    Насправді дуже круто, що наважилися, оскільки такі підходи концептуально є правильними і допомагають тримати код в чистоті.

    Підтримали: Sergey Designer, Vlad Kravtsov
  • Автоматичне генерування ресурсів із Figma для Compose

    Це якщо свідомі дизайнери є, то це прекрасно, бо на нас клали болт, переважно давали якісь огризки і ми крутилися вже як могли, бо в них веб був більш престижним.

  • Автоматичне генерування ресурсів із Figma для Compose

    Оце десь щось таке і нас було схоже, але через рукожопість адмінів все було дуже складно по інфраструктурі і часто десь та і щось треба було робити руками. Про ліби як такі також думали, наразі такий підхід і використовую, але там трохи було складно з флейворами, тому просто забили і клали ці файли напряму в репо.

  • Автоматичне генерування ресурсів із Figma для Compose

    І код, як можете глянути в проекті, писався в flavor, щоб було легше бачити, якщо щось витерлося чи де змінилося у файлах при котімі.

  • Автоматичне генерування ресурсів із Figma для Compose

    Ніяк, це чисто мануальні таски, щоб унеможливити будь-які зміни коду поза IDE.
    Суть була в тому, щоб піти від 3rd-party компонентів і генерувати ці файли, як тільки дизайнери релізять нову версію токенів (в нас для цього був скрипт).
    А до того був якийсь кошмар із кривих скриптів, що запускалися через ноду, а на вінді пацани взагалі деякі ламалися, коли треба було таке поставити.
    + не всі шарили, як писати JS, якщо іноді треба щось змінити.

  • Автоматичне генерування ресурсів із Figma для Compose

    Доволі круто звучить, якщо є можливість так організувати роботу і цим дизайнери спрощують життя розробникам. Нам так не повезло, оскільки цілий дизайн департмент не піддавався на шантаж мобайл (і не тільки) команд і вирішив зробити по-тупому, де в них є component-driven токени, а-ля, якщо бачиш тулбар, то в тебе буде Theme.colors.toolbarBackground і тому подібне.

  • Автоматичне генерування ресурсів із Figma для Compose

    Мені здається, що на початку саме цю лібу і засунули в проект, щоб просто файл кольорів писати. З текстовими стилями там була історія погірше і щось точно що робити вручну. Ну і та — тему автоматично воно не генерувало.

  • Проблеми mobile-розробки, які вже всім набридли

    А що з фастлейном не так?

    По апках — то насправді не проблема мати сотню додатків, всі вони доволі просто накатуються, оскільки це шаблон.

  • Google Play account став раптово Terminated

    Це якийсь прикол, як ображена дівка якась, а не гугл.

    Підтримали: Maksym Kalysh, Dmytro G
  • Проблеми mobile-розробки, які вже всім набридли

    Так і є, хоча і не завжди це може підійти. В нас на проекті цього не було, оскільки коміти клеїлись і формували реліз ноутси білдів. Також за оптимізацією можна рахувати збереження теки поточної гілки та її оновлення за потреби і видалення всіх файлів, що не у VCS на початку нового білда та і багато інших штук.
    Але тут нюанс в іншому — можна на початку робити так, щоб не було проблем, аніж потім костилити якісь рішення.

    Підтримали: Evgen Gafenko, Yevgen Haletskyi
  • Основні підходи до ефективного тестування ПЗ

    Тут навіть не тільки версія системи грає роль, як і виробник пристрою.
    Дуже часто зустрічаю в коді умову  if (isSamsung) { // just die } 

    Підтримав: Veronika Zhyhyr
  • Google Play account став раптово Terminated

    Більш всього, що не сам

    LiqPay

    тут винен, а якась скотина подала скаргу, що ви на зброю збираєте.

    8.3 Google does not undertake an obligation to monitor the Products or their content. If Google becomes aware and determines that a Product or any portion thereof (a) violates any applicable law; (b) violates this Agreement, applicable policies, or other terms of service, as may be updated in accordance with their terms; © violates terms of distribution agreements with device manufacturers and Authorized Providers; or (d) creates potential liability for, or may have an adverse impact on, Google or Authorized Providers (for example, if a Product has an adverse economic, reputational or security-related impact); then Google may reject, remove, suspend, limit the visibility of a Product on Google Play, or reclassify the Product from Google Play or from Devices. Google reserves the right to suspend and/or bar any Product and/or Developer from Google Play or from Devices. If Your Product contains elements that could cause serious harm to user devices or data, Google reserves the right to disable the Product or remove it from Devices on which it has been installed. If Your Product is rejected, removed, or suspended from Google Play or from Devices pursuant to this Section 8.3, then Google may withhold payments due to Developer. For information about the appeal process if Your Product is subject to a Legal Takedown or has been removed or suspended, please, see here.

    Підтримав: Dmytro G
  • Google Play account став раптово Terminated

    Там був же прикол з їх боротьбою проти ботів, що потрібно було запланувати верифікацію профіля всім розробникам. Ви таке не робили?
    І в листі зазвичай має бути більше деталей про це чи в консолі.

  • «Резерв+» вже можна завантажити. Розповідаємо про призначення і функції застосунку військовозобовʼязаних

    Магазини довго індексують дані, іноді це може займати дні, щоб оновити цифру на сторінці. Так само було і з Дією. Можете зараз перевірити, 100К+ на андроїді.

  • Flutter vs Kotlin Native App. Що обрати?

    Дуже багато раз пробував взяти флатер до рук (та і не тільки), але відмовився від тої затії.

    Обрав для себе шлях KMP, оскільки все одно треба працювати з нативом і в цьому випадку KMP дозволяє то робити зручніше, багато варіантів того, що ти можеш винести в спільну частину, від просто модельок, аж до 99% апки.

    Але і з ним не все так добре наразі. Хоча з кожним місяцем стає все краще. Наразі зробив кілька продакшн проектів, включно з маленькими проектами на Compose Multiplatform.

    Всі мейнстрімлять на флатер, з ним і роботу найти простіше. Як варіант, можете подумати просто про нативну розробку як таку.

  • Як зробити навігацію в Jetpack Compose зручнішою

    Бібліотека

    Compose-destinations

    просто біль в проекті. Багато багів, проблеми з навігацією, різні костилі треба було впроваджувати для того, щоб ця хрінь просто працювала. Як показала практика, її часто тягнуть в проект люди, які не вміють працювати з чистою бібліотекою навігації чи appcompanist-варіацією. Якби була можливість, то викинув би її з проекту і забувся б як страшний сон.

  • Маленька історія додатку на Kotlin Multiplatform Mobile + Compose UI для Android та iOS

    Код більше для розуміння картинки взагалом. Та і з телефону зручніше сприймати так. Лінки на гітхаб поки не буде.

    Підтримав: Dmytro Turskyi
  • Скандал навколо методів викладання на геймдев-курсах Varto School. Позиція студентів і школи

    В даній школі я маю два курси (UE5. Гра Перша (UEFG) / VFX для ігор (UEVFX)), а скоро стартує третій (3D Artist), і от що я вам скажу.

    Йдучи на ці курси, я розумів, що ця школа може не виправдати певні очікування, але мені було ок з тим. Я йшов туди, щоб отримати нові знання та навички. Сказати, що я їх не отримав? Ні. Всі уроки було пройдено, на всі питання я відповіді отримав. Чи є в мене претензії до формату викладання? Так. Ловив себе на тому, що іноді позалекційно могли якісь дрібниці робитися, але вони показувалися на відео і то було зрозуміло.

    В школі наразі я маю два формати навчань — запис лекцій і домашка (UEFG) та живі лекції із стрімінгом і записом (UEVFX). В кожного з цих підхотів є свої плюси та мінуси. На живих лекціях (UEVFX) не завжди подобається, що формат може бути розтягнутий, а на відкритих перших двох уроках була людина, яка закумарювала просто лектора і він відволікався від теми заняття. На записах (UEFG) іноді ти ловиш себе на думці, що ти бачиш якесь рішення, але не можеш про нього запитати чи бачиш помилку, яку допустив лектор, роповідаючи про різноманітне використання компонентів в тій чи іншій ситуації, але ту помилку виправляють і все потім працює. Або якщо ти не зрозумів, то перематуєш трохи назад і матеріал засвоюєш.

    Самі лектори — хороші спеціалісти та турбуються про те, щоб ти зрозумів матеріал. Наприклад, той лектор (UEFG), якого так невзлюбив автор оригінальної статті, мені о 10 вечора в вихідний був готовий зробити дзвінок, щоб розказати про рішення проблеми, яка в мене виникла при переході із одної анімації в іншу при ударі. А тепер запитайте в себе, коли б ви були готові так вчинити?

    Ще відчувається, що лектори дуже стараються спілкуватися українською і за це їм дуже велика повага. І якщо якісь проблеми виникали, то на них спокійно відповідали в дискорді. Навіть на те саме запитання, після якого почалася істерика, відповідь була написана. Ну хіба що є якісь ткрпіли, які не вміють в повідомлення і надвються, що їх думки прочитають і вирішать всі претензії.

    Моя особиста думка в тому, що багато хто забув, що таке програмування і що таке навчання. Це те, де тобі треба весь час вчитися. Автор оригінальної статті поламався на першому уроці, де було показано що ти можеш робити, а в домашньому завданні розказано, як треба зробити. Ніхто йому не поклав в рот готове рішення, через що і виникли конфлікти. Але то вже питання філософії. Як виходить краще вчитися, коли тобі все готове кладуть в рот і ти більш нічого не вмієш робити, чи коли тобі розповідають про можливості і вчать думати, даючи трішки складніші завдання на домашку? Чи ніби всі забули, що код без помилок не пишеться, сервера не відкатуються по бекапах на факапи, а люди це машини, що не роблять помилок. Тому перш чим нити, що навчання тут не таке, самі зробіть школу та покажіть, як правильно це робити.

← Сtrl 12 Ctrl →