Жабаскрипт (веде Віктор Турський)
4.57K subscribers
21 photos
2 videos
270 links
Авторський контент для JavaScript розробників, але не завжди про JS:). Пишу про архітектуру, best practices, продуктивність, безпеку, інструментарій.

Viktor Turskyi (@koorchik), Cofounder at Webbylab, SWE at Google

Рекламу не розміщую!
Download Telegram
В наступну суботу буду на Javascript fwdays
В цей раз буду без доповіді, але приймаю участь в панельній дискусії 🤓
Для підписників каналу знижка на всі види квитків 💵.
Промокод - Turskyi_Fwdays (дає 15% знижки)

Квитки тут https://fwdays.com/event/javascript-fwdays-2025
👍46
Внутрішні інструменти Google та їх альтернативи
В Google є величезна кількість внутрішних технологій та інструментів. Й є чудовий репозиторій з альтернативними інструментами та технологіями для/від колишніх гуглерів. Не для всього є альтернативи, але можна побачити різноманіття того, що застосовується всередені Google. Якщо цікаво ознайомитися, то ось лінк - https://github.com/jhuangtw/xg2xg
👍52🔥54
десь отак я почуваюсь на сцені коли треба висловити свою неекспертну думку
😁1084❤‍🔥1👍1
Forwarded from DOU
🕷🕸💸 20 000 000 грн для Третьої штурмової!

Традиційно на DOU Day ми відкриваємо великий збір — і цього року запрошуємо донатити у “Мережу Трійки”: https://dou.ua/triyka/

За кожні зібрані два мільйони — будемо розігрувати призи:

2️⃣ млн грн — Квиток на всі події DOU на рік 
4️⃣ млн грн — Навушники AirPods Max від Master of Code Global 
6️⃣ млн грн — MacBook Air 13" M3 (2024) від Jooble 
8️⃣ млн грн — Кавомашина Delonghi PrimaDonna Elite ECAM + 10 кг кави в зернах від N-iX 
🔟 млн грн — MacBook Pro 16.2" M1 від ZONE3000 
1️⃣2️⃣ млн грн — LEGO Star Wars “Зірка Смерті” від JatApp
1️⃣4️⃣ млн грн — Смарт-годинник Garmin від Uklon
1️⃣6️⃣ млн грн —  MacBook Pro 14 M4, 1TB (2024) від Brainstack 
1️⃣8️⃣ млн грн — MacBook Pro M4 16", 1TB SSD від mono 
2️⃣0️⃣ млн грн — MacBook Pro M4 16" 1TB SSD від appflame

Щоб взяти участь в розіграші — потрібно уважно прочитати правила — https://dou.ua/triyka/, або задонатити від 300 грн на банку — https://dou.ua/goto/tm0X
29🔥3
Олесь Петрів про AGI, DeepSeek, OpenAI, смерть копірайту, та останніх людей БЕЗ штучного інтелекту
Якраз за тиждень до цього випуску на одному івенті обговорював з Олесем ідеї розвитку штучного інтелекту, а тут ще вийшлов крутий випуск на УТ-2. Олесь це та людина, яка має дуже круте абстрактне мислення й в той самий час дуже вміє в реалізацію. Тому навіть складні математичні ідеї чи концепції теорії інформації, чи ШІ, Олесь може пояснити на пальцях. Відео більше 3-х годин, але можна слухати в форматі подкасту (головне не втратити хід думки). Також попереджу, що дискусія досить концептуальна вийшла, тому будьте готові.

PS: Нейростендап у відео - топ :)

ВІДЕО: https://youtu.be/ghvDMHzHALU?si=l5Q1yZaDhL-YEWap
👍409👌2🤮1🤣1
Viktor Turskyi on Programming
Вирішив запустити англійську версію свого ютуб-каналу про програмування. Поки просто перекладаю відео за допомогою ШІ й заливаю в канал. Ось перше відео - https://www.youtube.com/watch?v=4BzRkxQyPJ4

Ставте вподобайку й підписуйтесь :)
🔥81👍213👎1
Gemini CLI та Claude Code написані на React 🤯
Gemini CLI та Claude Code - це інструменти, які працюють у командному рядку, але водночас вони написані на React. Як це можливо?

Власні рендерери
React надає зручну абстракцію для побудови інтерфейсів. Netflix була однією з компаній, яка почала використовувати React для рендерингу своїх інтерфейсів не для браузера, а для телевізорів. У той час їм ще доводилося патчити React (пам'ятаю, як мене вразила їхня доповідь). Сьогодні ж рендерери React абстраговані, що надає значну гнучкість. Наприклад, ми маємо окремий рендерер для браузера - ReactDOM, а також рендерер для мобільних платформ - React Native. Але їх значно більше https://github.com/chentsulin/awesome-react-renderer

Ink
Оскільки рендерери тепер абстраговані, можна створити рендерер і під CLI. Існує чудовий проєкт від українського інженера - Ink (https://github.com/vadimdemedes/ink) , який дозволяє писати CLI-інтерфейси на React. Саме його використовують Google, Anthropic, OpenAI та багато інших великих компаній. Але це ще не все: Ink створює адаптивні CLI-інтерфейси й підтримує Flexbox. Але як це працює?

Yoga
Коли Facebook створював React Native, вони хотіли, щоб розробка мобільних застосунків була схожою на створення вебдодатків. Проблема полягала в тому, що візуальні компоненти в iOS та Android за замовчуванням позиціюються абсолютно (position: absolute). Хоча для вирішення цієї проблеми існують різні підходи, у браузері є така зручна річ, як CSS Flexbox, що дозволяє описувати адаптивну верстку в CSS, а браузер уже сам усе робить. Інженери Facebook, а точніше Крістофер Шедо (vjeux), вирішили створити рушій для верстки на C++, який би отримував на вхід Flexbox-макет, а на виході видавав для кожного елемента абсолютну позицію та розміри. Так і з'явилася Yoga (https://yogalayout.dev/). Пам'ятаю доповідь vjeux про те, як вони писали автоматизовані тести для Yoga, порівнюючи результат роботи бібліотеки з тим, що рендерить браузер. Таким чином, Yoga працює під капотом як у React Native, так і в Ink.

Я ніби за цим всім стежу дуже давно, але мене все одно вражає, як воно все збирається зі шматочків завдяки гарно спроектованим абстракціям. А як вам?
🔥145👍1310👌5🤮1🙉1
TypeScript, AI, технічний борг
Я вже робив пост на цю тему й казав, що AI полегшує використання TypeScript (https://xn--r1a.website/jabascript/335). Але сьогодні поділюсь ще однією думкою, що є й зворотня залежність - TypeScript полегшує використання AI.
Коли використовуєте якогось кодінг агента, то йому треба верифікувати коректність змін, що є критичної складовою його роботи. Запустити все й вручну потестувати в браузері агент повноцінно не може. Тому треба автоматизований спосіб, й тут два варіанти:
Статичний аналіз
Запустити тести
Тести не завжди є на момент написання нового коду. Також виконання тестів вимагає часу. А от TypeScript дає можливості статичного аналізу відразу; також помилки його зрозумілі агенту й вказують на конкретні рядки. Тому, використання TypeScript стає критичним сьогодні, якщо ви використовуєте агентів.

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

Де взяти час на якісний код й на якісні абстракції?
Насправді, оскільки агент пише за вас весь рутиний код, то у вас залишається весь час для того, щоб створювати йому правильний архітектурний технічний контекст. Бо, як казав Andrej Karpathy, це не prompt engineering, а context engineering. Тобто, наша задача - це менеджмент контексту (бізнесового, продуктового, технічного й тд) й маючи контекст AI може добре й новий код писати й виправляти баги реалізації.

Тобто, у нас є можливість бути продуктивнішими й мати більш якісний код. Так, й до AI більш якісний код був дешевшим з точки зору підтримки, але тоді на архітектуру час закладався, а от дрібниці постійно накопичувалися (бо менш критичні, а їх фікс часу може займати багато). Зараз же у нас ситуація така, що розробник відповідає за абстракції й рев'ю, а агент працює над реалізацією кожного компонета. Доречі, принцип "Assemble first" (розповідав на DOU Day минулого року) тут стає ще більш актуальним й важливим, бо потім просто реалізовувати дрібні компоненти агенту буде значно простіше.

Що думаєте? Які інсайти у вас при роботі з кодінг-агентами?
👍621
Ми всі трохи Лінуси тепер? 😅
https://x.com/tailwiinder/status/1945198890459840807?t=JHckjt84mONL9ImInNWFBA&s=19
PS: якщо раптом не знаєте, хто такий Лінус, то це чувак, який створив Linux й Git
😁724👍2
Нетворкінг і комунікація в IT
Прослухав випуск з Артемом Захарченко про конференції й нетворкінг й згадав, як воно було до повномасштабного вторгнення. Артем професіонал дуже високого рівня, а KharkivJS була однією з моїх найбільш улюблених JS-конференцій. Гарний подкаст, цікава бесіда. Налив собі каву й насолоджувався дискусією ❤️
https://www.youtube.com/watch?v=Lg_hfAGx1ek
23🔥5👍3
Інтерактивні симуляції світів в реальному часі
Тобто в реальному часі можна керувати персонажем, крутити камерою й це все виглядає, як справжнє. Мене такий прогрес вражає 🤯
PS: чекаю на remake гри Stray на базі ai симуляцій 😁
https://x.com/demishassabis/status/1952756363970466297
🔥34🦄21😱1
Космічна битва (навайбкодив гру)
Давно хотів створити гру, вертикальний скроллер шутер в космосі. Трохи вайб-кодингу в Gemini й гра готова (точніше невеликий прототип). Там навіть є фінальний бос 🤓 Зацініть - https://g.co/gemini/share/9bad026a188f

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

PS: для гри треба клавіатура! з телефона не працює
🔥34😐7👍31👏1😢1😎1
This media is not supported in your browser
VIEW IN TELEGRAM
Я на 14:00 на ретросцені. Деталі в коментарях. Буду радий спілкуванню 🤓
47🔥14🤓2👍1👎1🎅1
Forwarded from DOU
Що для вас важливо у виборі IT-компанії: команда, зарплата, формат роботи чи щось інше? Збираємо відповіді про це в опитуванні про компанію-мрії 👉 https://jobs.dou.ua/questionary/

Анкета анонімна, приєднуйтесь!
8😢1👌1
Роблю доповідь "Що таке продуктовий майндсет для інженера" на івенті від Skelar
11-12 жовтня буде безкоштовний офлайн (Київ й Варшава) івент від Skelar, де я буду з доповіддю про продуктовий майндсет для інженера. Але це той випадок, коли програма всього івенту настільки крута (для мене персонально), що хочеться побачити всі доповіді - буду обидва дні🤓
Реєстрація й деталі тут - https://code2lead.skelar.tech/
👍424
Наступні три дні на Lviv IT Arena 2025
Перший раз на цьому івенті й не знаю, що очікувати від нього 🙈 Але оскільки людей багато, то планую багато спілування) Буду радий випити кави. Якщо що, то пінгуйте мене @koorchik
PS: також потрохи вхожу в життевий ритм. Хоча й не планую нікуди на роботу поки не допишу дисертацію, але займаюсь консалтингом по процесам розробки, архітектурі програмних систем, інженерній культурі, бізнес процесам, впровадженню ШІ. Також адвайзінг деяких стартапів й менторінг. Монетизую свої 20+ років досвіду в розробці на позиціях CTO, CEO, Solution Architect, роботи в продукті, аутсорсі, Google й деякий досвід в кібербезпеці 🤓
🔥498👍3😎1
Technical Product Manager (Insurtech domain).
Тут мене попросили розмістити цікаву вакансію в каналі. Шукають технічного продакт-менедежера, але готові взяти людину, яка хочу перемикнутися в продуктовий менеджмент з інших суміжних спеціальностей. Наприклад, якщо ви працюєте QA, то скоріше за все вже вмієте розбиратися в продукті, аналізувати вимоги, аналізували фідбек користувачів, співпрацюєте з інженерами, та й створили не один тікет 😉.
Продукти виглядаєють цікаво. Я навіть встановив собі Easy Peasy (цікавий продукт, якщо треба страхувати другу машину в сім'ї, яка не сильно багато наїзджає)

ВАКАНСІЯ: http://bit.ly/4nqesPr
Чи думали колись світчнутися в продакт-менеджери?
👍11😁41🥴1