Илья Зыкин. Pro Жизнь
137 subscribers
1.1K photos
45 videos
4 files
95 links
Download Telegram
Локализация (ч 1)

Допустим, мы взяли популярную библиотеку, чтобы в React приложении менять языки (локали)

Для простоты грузим все языки при загрузке приложения.

Так же можно поступать и в storybook, и в тестах.

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

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

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

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

Ну ладно. Это еще пол беды.
🔥1
Локализация (ч 2)

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

Раньше (при синхронной загрузке) правильно инициализировались валидации, тк валидации хочется тоже показывать на языке пользователя.

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

И получается, что какой бы язык не выбрал пользователь — ошибки валиадции на дефолтном языке. Те на английском (в моем случае)

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

Поймать и понять и скорректировать такое поведение с учетом новых требований — это ресурс нескольких дней/недель в рамках работы в компании.

AI тут не помогает, тк он

1) не знает всех деталей желаемого
2) передача этих деталей невозможна в разовом формате, тк недостаточно информации о поведении системы
3) AI не знает особенностей поведения инструментов в разных окружениях
4) AI начинает зацикливаться и не может полностью "почувствовать задачу"

Итого:
1) чтобы получить итоговый результат, надо сформулировать задачу.
2) Чтобы сформулировать задачу — надо провести исследование.
3) Исследование для формулирования задачи приводит к фактическому решению задачи.

AI в таком процессе фактически бесполезен.
🔥1
Mercy

Я надеюсь, что это последнее изобретение, которое мне пришлось сделать и я наконец смогу сфокусироваться на проекте, как на продукте, а не как на площадке, на которой я собираю свой JavaScript фреймворк, реализующий c нуля и переосмысливая многие идеи экосистем Ruby и Ruby on Rails.
Как фильтровать bullshit

Твиттер уже не так сильно, но все еще полыхает.

Чувак сделал майнкрафт на 5 часов на Клауди!

Лидер мнений в AI сфере сделал приложение-будильник за 3 запроса!

Все это — собачья чушь.

20 лет назад автор фреймворка Ruby on Rails заявлял, что теперь каждый может сделать за 15 минут блог на его гениальном фреймворке.

20 лет спустя ни одна CMS на Rails ни занимает ни одного процента рынка.

WordPress занимает 40-70%.

AI открывает нереальные просторы для создания сервисов и приложений!!!!

Ну и где? Где где эта лавина коммерческих продуктов и сервисов?

Нигде. И не будет этой лавины.

Ровно потому, что из 1.000.000 самых талантливых программистов, которыми заполнен наш мир, только единицы смогли создать свой продукт и стать коммерчески успешными.

Создание продукта это не просто кодинг. Это совершенно другая деятельность, где никакой AI никогда не поможет.

AI это хороший помощник. Но творческих и морально-волевых качеств он не прибавит.

Инструмент это всего лишь инструмент.
👍1
AI и UI ❤️

С помощью AI можно легко, непринужденно и даже немного весело создавать свои UI-киты.

☑️ Story book как площадка для разработки элементов

☑️ SCSS как удобный инструмент написания CSS и работы с переменными.

☑️ CSS переменные, для жонглирования темами и стилями.

☑️ AI массово пишет примеры в storybook. Выполняет рутинную работу и позволяет мгновенно получать результат.

Создание и поддержание UI кита это обычно занятие скучное, рутинное и подверженное бесконечным неточностям.

AI позволяет радикально, драматически улучшить этот процесс.
AI / UI / Кастомные скины

Говорят, что в играх продают скины. Жалкие 10$ и можно выбрать цветовую схему автомата с которым ты бегаешь по локации.

Мой эксперементальный pet проект легко и непринужденно обзавелся цветовыми темами.

Да, конечно, настраивать цвета можно и нужно для каждой по отдельности.

Но я не дизайнер. AI просто сделал мне обычную, темную и золотую схемы.

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

Я "правильно" заложил основу проекта и теперь наслаждаюсь результатами. Сделал работу за 10 запросов.

Not bad. Not bad.
🔥3
UI + AI = Love

В моем микро UI kit не хватало только чекбоксов. И еще хотелось модных переключателей в виде кнопочки.

Если правильно организовать код, то темизация приложения — это всего лишь замена CSS переменных.

AI в таких простых рутинных задачах, как формирования UI кита — справляется идеально.

Недавно ко мне приходил клиент с запросом на создание UI кита для их компании. Надо было организовать процесс.

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

Теперь, в принципе, текущий опыт по формированию Mini UI kit для клиента я могу продавать буквально как продукт-услугу.

Вся картинка понятна и ясна. Все подходы обкатаны. Есть прекрасный пример как это все работает с минимальными усилиями и объемом кода.

AI в этом процесса работает превосходно. Берите на заметку. Пользуйтесь. Зарабатывайте.
👍2
Media is too big
VIEW IN TELEGRAM
Такой AI мне нравится. Дайте полный метр.
🔥3
AI oriented Web Framework

То чувство, когда делал для себя мини фреймворк для своего проекта, с учетом возможностей AI и ориентации на атомизацию и сокращение рабочего контекста.

А AI на основе этого начал сам создавать страницы проекта, которые ты даже не планировал делать, но которые отлично подходят к проекту и практически не требуют правок.

Да, страничка простая, но в ней и роутинг, и локализация, и учет по именованию и структурированию компонентов и использование UI kit.

Вжух!

Фронтовый registration flow фактически готов.
👍2🔥2
AI тебе больше не друг. У него лапки

Не знаю, заметили вы или нет, но AI стал "умнее", чем раньше.

AI научился лениться

1) Я заметил, что AI начал ставить console.log в код, чтобы лучше понять что происходит.

2) Я заметил, что AI начал комментировать тесты, которые он не может заставить работать.

3) Я заметил, что теперь AI не стесняется подгонять основной код, чтобы тесты были зеленые. И он просто не признает просьбу считать код источником правды.

Спасибо разработчикам AI инструментов! Это еще вселяет надежду на потребность в профессии оператор AI.

Из свежего
- Начал интеграцию Backend c Frontend.

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

- coderules переоценены. AI их так же легко пропускает, как и забывает. Но как источник требований, чтобы не повторяться — работает хорошо.
👍3
Впечатленные современными возможностями AI - всей семьей выехали в музей робототехники, чтобы быть готовыми к моменту, когда «машины восстанут из пепла ядерного огня».

Было интересно.
👍3🔥2