kirjs_ru

@kirjs_ru


Стримлю про front-end, Open Source, Angular приходите ко мне на стрим :)

@kirjs | https://www.twitch.tv/kirjs

kirjs_ru

22 Oct, 16:36


https://x.com/rowancheung/status/1848743700702130474

Теперь роботы смогут управлять компьютером, надо протестировать на стриме.

Хоть и страшно капец

kirjs_ru

09 Oct, 14:16


Хочу посоветовать книжку про историю AI: Genius Makers: The Mavericks Who Brought AI to Google, Facebook, and the World

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

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

Лично для себя узнал со стороны о процессах, которые происходили в Гугле последние годы, разобрался, что за шум был с project Maven, и понял почему я в 2016/2017 годах ездил в Китай, и почему потом перестал.

Узнал о книге отсюда:
https://t.me/new_yorko_times/306

kirjs_ru

04 Oct, 18:28


Я активно юзаю голосовой режим в ChatGPT, и хотелось сразу его запускать с рабочего стола. Для Android Есть два варианта:

Долгое нажатие на ChatGPT -> Перетаскиваем Voice на рабочий стол (также можно и с фото сделать)
Использовать ChatGPT виджет

kirjs_ru

03 Oct, 17:55


https://openai.com/index/introducing-canvas/
Интересная новая штуковина, погляжу на днях на стриме

kirjs_ru

02 Oct, 12:37


Сегодня на внезапном стриме в 19:00 с Виталием Павленко (@vitalypavlenko):

Пишем React трекер привычек с AI-IDE Cursor.com

🎵 Разобьем на таски с помощью AI
🎵 Попросим AI накодить, посмотрим что получится
🎵 Попробуем голосовой ввод

📺 Посмотреть: twitch.tv/kirjs | youtu.be/NVnHvsuc5Fc
Шаблон: https://github.com/vpavlenko/web-2024-template

kirjs_ru

26 Sep, 15:56


Вчера попробовал новый Advanced Voice Mode в ChatGTP.

Старый режим тупил и я его быстро забросил. Новый - быстрее и с новыми голосами, мне кажется я начну его регулярно юзать.

Я долго не понимал, зачем оно нужно, если текстом быстрее, но потом нашел два способа применения, которые существенно улучшают мою жизнь:

❤️ Оставлять фоном когда я гуляю и думаю. Если хочется что-то узнать, просто спрашиваю вслух, не нужно доставать телефон.
❤️ Оставлять фоном, когда делаю флеш карточки на Немецком, спрашивать непонятные моменты и произношение не переключая приложения и не сбиваясь с контекста.

Понравилось:
Быстрее и удобнее предыдущей версии, приятнее использовать
По сути привычное общение с ChatGPT только голосом
Поболтали на немецком и поняли друг друга
Произношение улучшилось по сравнению с прошлой версий, меньше ошибок в ударениях

Из непонятного
Можно его перебивать (но пока не очень гладко)
Я просил его поправить мне произношение. Половину ошибок он замечал, а половину пропустил, тут пока слабо.
Есть понимание шуток и эмоции, не понял зачем
Субъективно не один из голосов не захотелось выбрать с самого начала, хотя все они классно разговаривают. Наверное я ожидал привычный дикторский голос.

И минусы:
🍎 Пока доступно 30 минут в день
🍎 Лагает, и тупит, иногда приходилось перезапускать
🍎 Если не дай бог вдохнуть, или сказать э-э-э посреди речи, то он начинает говорить (понятно, что это компромисс нужный для скорости, но бесит)
🍎 Иногда не понимает, что я говорю, некоторые вещи пришлось переобъяснять несколько раз.
🍎 Несколько раз сбивался и говорил "С этим я не могу вам помочь", другим голосом. После чего отвечал на повторный вопрос.

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

Жду когда уберут лимит на 30 минут.

kirjs_ru

25 Aug, 18:17


На внезапном стриме в 20:40 по мск Посмотрим c Денисом достаточно ли курсор умный, чтобы разобраться в кодовой базе Angular и починить какой-нибудь баг, или пока не готов?

👀 Посмотреть: twitch.tv/kirjs | youtu.be/GC160fgkKas

🗣 Пообщаться голосом: twitch.tv/kirjs

kirjs_ru

11 Jul, 15:54


Introducing @let in Angular https://blog.angular.dev/introducing-let-in-angular-686f9f383f0f

kirjs_ru

14 Jun, 14:16


Upd: Стрим про ноты будет в 8 вечера (через 2 часа и 15 минут), на картинке было неправильное время.

📺 Посмотреть: twitch.tv/kirjs | youtu.be/zVuvWDFTpOc

kirjs_ru

13 Jun, 17:14


В Пятницу вечером в 20:00 с Виталием Павленко (@vitalypavlenko):

🎵 Посмотрим сайт rawl.rocks
🎵 Поболтаем о музыкальной теории
🎵 Обсудим код, интересные технические решения

📺 Посмотреть: twitch.tv/kirjs | youtu.be/zVuvWDFTpOc

🎶 rawl.rocks

kirjs_ru

26 Apr, 16:57


На внезапном стриме в 20:00 по мск Сделаем сайт с аккордами на фреймвоке analogjs.org

👀 Посмотреть: twitch.tv/kirjs | youtu.be/oRr_GCSQwMY

🗣 Пообщаться голосом: twitch.tv/kirjs

kirjs_ru

19 Apr, 16:04


Минко на связи! приносите свои вопросы, у нас час
Можете спрашивать на русском, я переведу (или на Болгарском)
twitch.tv/kirjs | youtu.be/ZryO1zl4TEM

kirjs_ru

18 Apr, 17:10


В предверии нового релиза, завтра (в Пятницу, 19 Апреля) в 19:00 по Москве к нам на стрим придет Минко Гечев из команды Angular.

На стриме мы обсудим куда движется Angular и дальнейший планы. Приходите и задавайте свои вопросы.

⚠️ Стрим будет на английском

📺 Посмотреть: twitch.tv/kirjs | youtu.be/ZryO1zl4TEM
📚 angular.dev | twitter.com/mgechev

kirjs_ru

20 Mar, 18:29


На ng-conf объявили, что будут объединять Angular и wiz (внутре-гугловый фреймворк), посмотрим на днях на стриме что это значит.

https://twitter.com/sarah_edo/status/1770478763253379488?s=46&t=k9l-HypAj6tWJpDQhKBKCw

https://www.youtube.com/watch?v=nIBseTi6RVk&t=1s

kirjs_ru

29 Feb, 12:24


Появление React ребята из Facebook часто объясняют примерно вот так:

В далеком 2013 году в Facebook Chat часто появлялись фантомные сообщения: уведомление приходило, иконка загоралась, а самого сообщения не было.

Это было вызвано ужасным императивным кодом, а чтобы это починить и был придуман React.


У меня всегда были вопросы к этому объяснению. А вчера Adam Wolff причастный к разработке добавил деталей:

Да, React, был действительно создан для решения проблемы фантомных уведомлений, но эту проблему он в результате не решил, потому что проблема на самом деле была в кривых настройках DNS где-то в Индии, и когда DNS починили проблема ушла.

https://twitter.com/dmwlff/status/1762885255030259854?s=20

kirjs_ru

21 Dec, 16:40


Рекомендую ставить на репите, пока вы спите, и JavaScript мудрость впитается в ваш мозг.

kirjs_ru

20 Dec, 12:01


🎉 разбора срача Соера и Мурыча - последний пост

Вопрос 3.3


Почему это ловится?

async function example() {
try {
await new Promise((resolve, reject) => {
throw "Ho";
});
} catch (e) {
console.log("Error: ", e);
}
};
example();


Оценка понятности вопроса
🤖 ChatGPT: 100%
🤖 Bard: 100%,
🧑‍💻 Наша субъективная оценка: Мы поняли вопрос

Оценка ответа Соера на заданный вопрос
Соер не понял вопрос и продолжил отвечать на предыдущий

Факт чек (докапываемся по мелочам)
🤔 Мурыч использовал этот пример в противовес ответу Соера, который сказал, что Promise обрабатывает ошибку.
Мы не очень поняли, почему это контрпример, в данном случае Promise ловит ошибку и отправляет в reject, а await при распаковке если видит reject перевыбрасывает ошибку

kirjs_ru

20 Dec, 12:01


Вопрос 3.2

Почему код не будет срабатывать в catch

try {
setTimeout(() => { throw "Error"), 1)
} catch (e) {
console.log("Error: ", e);
}


или

try {
new Promise( (dores, doRej) => { throw "Ho"; } );
} catch (e) {
console.log("Error: ", e);
}


Оценка ответа Соера на заданный вопрос
Соер сказал, что код Promise выполнится вне try/catch.
На самом деле он выполняется синхронно внутри блока, но ловится Promise и перенаправляется в reject (Соер это позже поймет)

Оценка понятности вопроса
🤖ChatGPT: 100%
🤖Bard: 100%,
🧑‍💻Наша субъективная оценка: Мы поняли вопрос

Факт чек (докапываемся по мелочам)
Мурыч сказал, что callback переданный в Promise выполняется синхронно, так и есть

Что полезного мы узнаем в результате?
Если не распаковать Promise, exception не вылетит

kirjs_ru

20 Dec, 12:01


Вопрос 3

Каким образом организована обработка исключений exception в современном JavaScript

Как работает throw и try/catch

почему в если выбросить ошибку при создании промиса, она не ловится в try catch


Оценка понятности вопроса
🤖ChatGPT: 100%
🤖Bard: 100%,
🧑‍💻Наша субъективная оценка: Мы поняли вопрос

Оценка ответа Cоера на заданный вопрос
Соер сказал, что в блоке try вызывается throw и ловится в catch.
Это верный ответ, но можно было рассказать побольше.
Часть про Promise не была отвечена (но была обсуждена в следующем вопросе)

Факт чек (докапываемся по мелочам)

🤔 [косяк] Мурыч сказал, что "Throw это обычный Return (С особенностями)"

Это интересная аналогия, и у них есть общее свойство: они оба используют Completion Record на уровне спецификации.

При этом семантически и функционально они отличаются, мы пришли к тому, что они слишком разные, и это не очень точная или полезная аналогия
https://tc39.es/ecma262/#sec-completion-record-specification-type

kirjs_ru

20 Dec, 12:01


Вопрос 2

Что такое, согласно официальной спецификации, свойства для Object?

Существуют ли какие-либо существенные особенности в формировании свойств?

Если да то какие?


Оценка понятности вопроса
🤖ChatGPT: 10%
🤖Bard: 10%,
🧑‍💻Наша субъективная оценка: Вопрос был про свойства, а ответ ожидался про ключи, для нас это было неочевидно.

Оценка ответа соера на заданный вопрос
Соер сказал что свойство представлено объектом содержащим имя, значение + дескриптор. Что у объекта есть внутренние свойства ([[в квадратных скобках]]) и внешние.

В целом ответ по теме, но маловато, можно было бы развернуть и рассказать больше про дескрипторы, геттеры, сеттеры и пр.

https://tc39.es/ecma262/#sec-object-type
https://tc39.es/ecma262/#sec-property-attributes


Факт чек (докапываемся по мелочам)
🤔 [неточность] Соер сказал что в дескрипторе битовые поля, вероятно имел в виду булевы.

🤔 [непонятка] Мы не очень поняли, как Integer Index связан с BigInt и Atomics, которые Мурыч упомянул несколько раз?

🙀[косяк] Мурыч сказал: "В спецификации нету слова key ключ", поискал по слову "Key" и не нашел.
Если бы мурыч искал "key" (с маленькой буквы), или "property key", он бы его нашел
https://tc39.es/ecma262/#sec-object-type

🙀Мурыч так и не признал, что вопрос был про ключи.
Это как спросить про велосипед, а ожидать ответы о колесах


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

var theArr = [];

theArr[ (2 ** 32 - 1 ) ] = 1;

theArr.length; // 0

theArr[ (2 ** 32 - 2 ) ] = 1;

theArr.length; // 4294967295

https://tc39.es/ecma262/#sec-array-exotic-objects-defineownproperty-p-desc