Estadísticas de telegram channel - @web_overflow

Logotipo de la comunidad de telegram -
2024-07-14

Número de suscriptores:
3989
Fotos:
418 
Videos:
42 
Enlaces:
545 
Categoría:
Tecnologías
Descripción:
Затишний блог про веб-розробку і не тільки 💛 Чат: @web_overflow_chat Співпраця: @web_overflow_support Автори: @lluchkaa & @anastasiia_tarasenko

👥 Número de suscriptores

Promedio/Día: -5
Promedio/Tiempo: -13
Promedio/Mes: -45
Total:
3 989

👁️ Vistas promedio por mensaje

Promedio/Día: +5600
Promedio/Tiempo: +4071
ERR: 99.04%
ERR (24): 140.39%
Promedio de 30 días:
3 951

📊 Mensajes por Día

Último día: 0
Promedio semanal: 0.1
Promedio por día
0.2

Historial de cambios de estado

Oficialmente no confirmado
2024-07-14

Muro canal Web Overflow 🇺🇦 - @web_overflow

Gym Notification 🏋Відразу хочу зазначити - я не гей!Ми ходимо в спортзал Smartass. Формат тут - групові заняття у визначений час для обмеженої кількості людей. Останнім часом стало доволі важко встигати записуватись на тренування, які нам подобаються та підходять по часу, місця розбирають дуже швидко. Як правило, нові заняття додають у п’ятницю в рандомний час (думаю це роблять вручну).Тож що я зробив? Навайбкодив простий скрапер сайту, який перевіряє, чи вже з’явилися заняття на наступний тиждень. Заодно вирішив спробувати захостити все на своєму Raspberry Pi і використати Temporal.У Kubernetes окремо підняв Temporal Server - "мозок" системи, який оркеструє всі workflow. Окремий сервіс (той самий скрапер) підключається до сервера, реєструє workflow, який потрібно виконувати, а далі вже запускається по команді від Temporal.Я вже трохи попрацював із Temporal, тому якщо буде цікаво - можу якось окремо розповісти про нього детальніше.У розкладі додав запуск щохвилини з 9:00 до 21:00 по п’ятницях. Якщо сповіщення ще не відправлялось, сервіс перевіряє поточний розклад на сайті. Якщо заняття з’явились - надсилає повідомлення в Telegram.Прямо зараз він невпинно виконує свою роботу, тож побажайте йому удачі 🤞Якщо вам раптом цікаво глянути код, додаю нижче посилання:👉 Відкрити raspberry👉 Відкрити smartass-subscriber👉 Відкрити Temporal
1980
26-05-08 09:09
LSP + AI 🔌Що таке LSP? Це стандарт, за яким клієнт (зазвичай редактор коду, а тепер і AI) взаємодіє з “мовним сервером”.А що таке мовний сервер? Це окремий невеликий сервіс, який розуміє код (зазвичай конкретну мову) і знає, як із ним працювати.Чому це круто? Якщо ви створите свою мову C++ Pro Max (назва під авторським правом!!), розробникам VS Code, Neovim, JetBrains тощо не потрібно буде додавати її підтримку. Замість цього ви пишете власний сервер, який через LSP допомагає редактору:• находити визначення функцій;• показувати всі їх виклики;• знаходити статичні помилки;• перейменовувати змінні, та інше.Виглядає це приблизно так:Редактор > Мовний сервер: де визначена функція X (файл X.cpp, рядок 4, символ 12)?Мовний сервер > Редактор: у файлі ABC.cpp, з (рядок 130, символ 0) до (рядок 142, символ 1).👉 Читати більшеТепер про AI-агентів.Коли AI читає код проєкту, він бачить лише текст. Без LSP йому доводиться здогадуватися: де визначена функція, які в неї параметри, чи існує вона взагалі.Наприклад, щоб знайти визначення функції, AI робить пошук по імені в усьому проєкті й серед збігів намагається знайти імплементацію. І це ще простий випадок. А якщо функція перейменована через імпорт? Так, AI впорається - але витратить значно більше токенів.З LSP агент отримує:• точні визначення символів і типів;• список усіх використань функції (корисно для рефакторингу);• діагностику в реальному часі (помилки та попередження);• семантичний пошук замість grep.На практиці різниця особливо помітна у великих репозиторіях. Коли контекст і так великий, AI може "ходити" по коду осмислено, а не просто читати все підряд.Ми вже підключили LSP для JS/TS та Python. Конфігурації в більшості провайдерів дуже схожі, тому ділимося посиланням на GitHub Copilot.👉 Відкрити посилання
1540
26-04-24 11:51
Переписування Neovim config 🤓Нещодавно вийшла версія Neovim 0.12, і я вирішив повністю оновити свій конфіг за допомогою Claude Code. У результаті - доволі непогано: вдалося багато чого оновити й позбутися зайвих налаштувань. Хоча, чесно кажучи, було чимало "перекидувань" туди-сюди, коли Claude пропонував вигадані зміни (або то я просто криворуко пишу промпти).Що хотів би відзначити:1. AI стає лінивішим (як уже казали @yu_dev01 і @vova_taras). Часто він "не дуже" хотів щось робити, бо це нібито неважливо - доводилося кілька разів просити перевірити реліз-доки й поправити код.2. AI - це інструмент, яким потрібно вміти користуватися і вміти налаштувати так, щоб отримати бажаний результат.3. Ми втрачаємо радість від роботи з кодом (про що казав @MatiGreen).4. Натомість зростає цінність інших навичок: вміти перевіряти те, що робить AI, проектувати рішення і дизайн систем - ось що точно буде потрібно в списку скілів.Далі планую:- додати АІ конфіги та скіли в репозиторій;- додати хуки зі звуком/нотифікаціями, коли потрібне моє підтвердження.Якщо цікаво, всі конфіги можна глянути тут:👉 Відкрити посилання
1600
26-04-08 08:09
Я тепер архітект!...і найгірше, що цей пост НЕ від Юри 😭Останні пів року я працювала над чудовим проєктом із дуже класною, проактивною та розумною командою (вони можуть це читати, якщо що 😁). Якщо серйозно, мені справді подобались і люди, і завдання, над якими я працювала. Таски були різнопланові: було де покопатись і де щось підівчити. Але проєкт був розрахований на пів року і, на жаль, його не продовжили.Але позитивна нотка тут є - мене залишили! АЛЕ тепер (з цього тижня) я працюю в маленькій команді (дуже маленькій - я і ще один розробник, який також доєднався пів року тому) над міграцією фронтенд-архітектури. Завіса, падіння мікрофону.Я була налаштована дуже песимістично - настільки, наскільки дозволяв мій тривожний розлад, який я сама собі діагностувала. Але на практиці не все так погано. У нас доволі багато часу, щоб розібратись із поточною архітектурою, і найважливіше - вже є готовий план міграції. Перші кроки виглядають не такими вже й складними, якщо розібратись, і їх можна делегувати AI. А цей підсобнік мав би добре справлятись із гарно описаними монотонними завданнями. Плюс, мені подобається, що нас двоє, ми спокійно працюємо над своєю місією і ніхто нас не має турбувати. Це лайк.Але я не поспішаю радіти й розслаблятись! Адже, як ви вже знаєте, я не з тих програмістів, які люблять колупатись в архітектурі й визначати, що ж може пришвидшити застосунок на 0.0001 мс. Думаю, Юра був би в захваті від такого проєкту, але не я.На цьому можна було б завершити мої новини, але куди ж без есенціалістських приколів. Я тепер читаю газети замість телеграм-каналів. Тому, будь ласка, в чаті не спойлеріть мені новини - я про них дізнаюсь у наступному випуску газети «Високий замок» і «Експрес». Якщо що, я не різко постаріла на 50 років - це новий тренд на аналогове життя, яке я всім раджу!Всім гарного завершення робочого тижня і затишних вихідних! ☀️
2610
26-03-06 13:11
OpenClaw 🦀Коли OpenClaw (чи як його тоді називали) завірусився, я подумав, що варто спробувати. Встановлювати його на своєму комп'ютері не дуже хотілося. Можна було тихо встановити у Насті, але ризики получити були доволі високі.Як я розповідав раніше, на Raspberry в мене був встановлений лише Pi-hole для фільтрації реклами через роутер. Тому з'явилась наступна ідея: розгорнути і Pi-hole, і OpenClaw у Docker, ще й для повного щастя в Kubernetes - щоб і 2 агенти можна було запустити, і щоб само рестартнулось якщо що, і щоб власне трохи побавитись з Kubernetes. Ну і звісно, це все буде на NixOS.Навайбкодив я це все діло за кілька вечорів + трохи дофікшував пізніше.Отож зовсім трохи висновків:• OpenClaw: штука доволі цікава, але потребує правильних налаштувань. Я починав робити це, коли документації для Docker не було (або я її просто не знайшов), тому доведеться трохи переписати. Треба буде ще якось дати йому доступ до браузера, щоб міг у реальному часі щось шукати + додати якихось скілів, щоб дійсно чимось допомагав.• Kubernetes: потужний інструмент, але кілька разів подумайте, чи він вам потрібен для поточних потреб.• Щодо операційки: дізнався про kexec (по суті встановлення ОС на тій самій машині) та проблеми з підтримкою деяких ОС на Raspberry 5 через ARM.Якщо що, посилання на код нижче:👉 Відкрити посилання
2880
26-02-20 09:26
Понеділкова рефлексія.Минулого тижня я зрозуміла дуже просту істину: якщо ти не говориш про свою роботу і досягнення - велика ймовірність, що цього ніхто не помітить.Я про це багато чула і читала, але мені завжди здавалося, що це щось максимально примітивне. Ну типу - я ж стараюсь, виконую свої завдання швидко і якісно, допомагаю колегам, знаходжу баги і одразу їх фікшу - рано чи пізно це помітять. Плюс, нас виховували з думкою, що скромність прикрашає людину. Але, насправді, в ІТ (та й, можливо, в багатьох інших сферах) ці настанови не дуже працюють.Мало компаній і команд, де реально намагаються слідкувати за всіма і детально дивитися, хто, що і як виконує. Та й це обʼєктивно складно. Тому в гру вступає самопрезентація - вміння гарно показати свою роботу і підсвітити те, що ти робиш добре.Пару років тому мене щиро дивувало (і бісило), коли колега міг взагалі нічого не робити цілий тиждень, але на демо розповідав так, ніби переписав пів застосунку і пофіксив 100500 багів. А зараз до мене починає доходити… можливо, він щось знав 😂Тим часом моя ситуація: таска виглядає простою, на пару годин, але по ходу виявляються інші важливі проблеми, які треба вирішити. І це в результаті реально полегшить роботу всій команді. Але ж чому про це розповідати - кому це цікаво, технічно, нудно і тд. Можна ж просто сказати: "та, таска затягнулась, сорі", а далі вони самі колись побачать, що було зроблено. Та ні, блін, не побачать.Звичайно, лише на вмінні гарно говорити далеко не заїдеш. Але тепер я починаю розуміти, що soft skills і вміння себе презентувати / продати - реально грають одну з ключових ролей в ІТ. І без перебільшень. Бо зараз дуже багато технічних проблем можна відносно легко вирішити за допомогою AI. І якщо ти дуже сильний технічно, але не вмієш це донести - буде складно.…або ні. Я тут не експерт-коуч-(якісь-ще-модні-регалії), просто понеділкова рефлексія 🙃Гарного початку робочого тижня. Лишилось ще зовсім трішки - тож можете сміливо починати переносити всі важливі задачі на наступний рік 😉#experience
4290
25-12-15 08:57
Де ми шукали роботу?Пости виходять з дуже великим пінгом, ми знаємо.У цьому списку ви не знайдете якихось мега невідомих або супер екзотичних сервісів, але саме вони допомогли нам знайти нову роботу.1. Djinni - суб’єктивно найкраща платформа. Проста, анонімна, зручна. Два наші прийняті офери були саме звідси. Класно, коли компанія виставляє вилку: можна зрозуміти рамки очікувань і коригувати свій профіль під них 😉2.LinkedIn. Окрім того, щоб вмикати Open to Work і чекати на рекрутерів, можна використовувати вкладку Jobs. Не скажу, що для нас це було дуже ефективно, але кілька діалогів точно зав'язувались. Також привертає увагу ваша активність, але то вже порадитесь з @Yurets7777 😅3. Dou. Раніше не розглядали цю платформу як основне джерело вакансій, але цього разу кілька хороших опцій прилетіло саме звідти. Особливо корисно, якщо періодично моніторити нові пропозиції - інколи з’являються дуже релевантні варіанти.4. Сарафанне радіо - старий, добрий і перевірений метод. Поки ми були в активному пошуку, друзі й знайомі регулярно скидали нам варіанти зі своїх компаній або пересилали вакансії від рекрутерів. Це той випадок, коли нетворкінг справді працює.Можливо, ми щось пропустили. Якщо у вас є платформи чи поради, які допомогли вам, - діліться в коментарях 💛#experience
3010
25-11-25 07:43
Feature Flags 🚩На моєму поточному проєкті активно використовують Feature Flags (FF). Раніше я чув про них, але ніколи не працював із ними безпосередньо.Що це таке? Це просто змінна, яка вказує, чи доступний певний шматок функціоналу конкретному користувачу. Виглядати це може приблизно так:const isPokemonCardEnabled = checkIfPokemonCardEnabledForUser(currentUser);// ...return isPokemonCardEnabled ? <PokemonCard /> : null; Що це взагалі дає? Можна не боятися викочувати нові фічі, адже якщо щось зламається - просто вимикаєш FF, користувачі щасливі (хоч і без нової фічі 🥲), а у розробників є час спокійно все пофіксити.Хоч існують сервіси, які надають функціонал для FF, на моєму проєкті такі не використовуються: усі конфігурації зберігаються в базі, а є міні-адмінка, яка дозволяє вмикати/вимикати їх окремим організаціям або клієнтам. А в Насті все по-крутому - у них використовується ажурівський сервіс для керування feature flags.Яка взагалі думка щодо них? Це класний спосіб інкрементно додавати новий функціонал у систему. Головне - вчасно підчищати старі FF, бо можна доволі швидко наплодити довгий список. Ну і, здається, найзручніше все ж робити це як у Насті - через готовий сервіс, а не писати все з нуля.#experience
3820
25-11-14 09:23
Onboarding 👋Так давно не писала тут, що аж трохи незвично. Але потихеньку вже потрібно вливатись у новий режим і знову гнатись за тим неіснуючим work-life balance.Такс, про що ж я. Оскільки ми обидва відносно нещодавно завершили свій онбординг у нових компаніях і проєктах, думаю, нам є чим із вами поділитись. Не знаю, як інші проживають цей період, але для нас він був певною мірою стресовим.Тому ловіть непрохані поради, як пережити старт у новій компанії й зберегти трохи нервових клітин.1. Take your time.Задачі, які ви на минулому проєкті закривали за годину, тут раптом розтягуються на день. І це ок - ви працюєте з новим кодом, архітектурою, процесами, задачами та людьми. Не потрібно поспішати чи думати, що ви вже щось не встигаєте.2. Chiiiiiill.Step by step - і все точно стане легше й зрозуміліше. Наберіться терпіння і намагайтесь знайти баланс у цьому хаосі, який з вами відбувається на даний момент. Серйозно, цей період не про продуктивність, а про адаптацію. Дозвольте собі розібратись спокійно, не звинувачуючи себе за повільний темп.3. Не бійтеся питати.Якби кожного разу, коли треба було просто запитати, а не витрачати овердофіга годин на пошуки відповіді, в мене був би мінімум запасний тиждень життя (і це лише за останні два місяці). Тому не повторюйте моїх помилок: якщо вам щось незрозуміло (і це не гуглиться за 15 хвилин), краще вже потурбувати якусь людинку й уточнити. Це точно збереже вам нерви і час.4. Насолоджуйтесь періодом онбордингу.Звучить як мазохізм, але насправді - це чудовий час, коли від вас (якщо компанія адекватна) не очікують блискавичних результатів. Можна спокійно розібратись у проєкті, поспостерігати за процесами, познайомитись із командою.І головне - не вимагайте від себе забагато. Вам за це все одно недоплатять 😉#experience
2029
25-11-06 08:00
Трохи не останніх і останніх новин 😅У мене новий проєкт уже трохи більше двох місяців. Увесь цей час був якийсь такий напружений, що я досі нічим тут не ділився. Тож зараз буде короткий екскурс у мою поточну робочу обстановку.Отже, зараз я працюю на позиції фулстека в невеликій команді з чотирьох розробників і ще кількох менеджерів. 90% операцій із базою даних - читання, бо в нас є ще кілька команд, які збирають та аналізують дані. Через це дуже багато денормалізації і про нормальні форми можна забути.З цікавого, з чим я ближче познайомився на проєкті:- Feature Flags. Тут їх справді багато, можливо навіть забагато. Деякі, здається, уже давно можна видаляти. Але це точно цікавий спосіб поступово додавати нові фічі в застосунок.- Micro-frontend і версіонування модулів. Оскільки модулі білдяться у статичні файли і усі версії зберігаються в хмарі, то завжди можна вибрати, яку версію якого модуля використовувати в прозі.- API Contracts. В окремому модулі описуємо zod-схему та контракт, за яким взаємодіють бекенд і фронтенд. На основі цього фронтенд навіть генерує готові до використання хуки. Так, уже є готові рішення, але мати своє теж цікаво.Також я вже трохи познайомився з Kubernetes (але нічого на ньому не робив), з GitOps і навіть щось писав на Python. Починаю краще розуміти, що мені подобається, а що ні. І точно треба знову налаштовувати work-life balance.Якось так. Соромно, що давно не з’являвся тут і в чаті. Буду старатися виправитися!PS: шо, шукаєте лимони в Гороховського? 🍋 в нас вже 40+ 😅
3950
25-10-16 10:36