Вы знаете Progressive JPEG, но вы знаете о Progressive JSON?
Пару дней назад Дэн Абрамов написал статью объясняя новый тип стриминга данных с сервера. Обычно, когда мы стримим данные, мы стримим строчку за строчкой или отправляем какие-либо инкрементальные сообщения. Тут предлагается отправлять json используя обход дерева в ширину. Ну, те самые ненужные структуры данные и алгоритмы.
Т.е. сперва вы поймаете верхнюю структуру с ключами-заглушками, которые поступят позже:
Вот эти $1, $2, $3 это как раз те заглушки, которые обработаются на клиенте как промис. Это позволяет разбить все данные на куски и отправлять их по мере готовности и оптимизировать запросы на стороне сервера. Таким образом, мы можем начать заполнять данные на странице по частям, а не ждать пока все загрузится. С одной стороны эти запросы можно разбить на несколько частей и грузить параллельно, но что если нам для каких-то целей удобнее грузить что-то одним потоком?
Оказывается именно так и подгружаются серверные компоненты в React. Приложение тоже своего рода дерево. Дэн Абрамов объясняет, что Progressive JSON позволяет загружать данные по частям, что делает загрузку более эффективной и отзывчивой. При этом мы всегда знаем, какие компоненты еще не загрузились и можем отобразить их в виде заглушек.
Понятное дело, что тут они оптимизирут отправку иерархической структуры данных по сети. Я подозреваю, что оно ляжет в один поток QUIC. Т.е. если бы можно было разбить этот стрим на несколько, то quic смог бы тянуть несколько потоков? Я понимаю, что смешиваю транспортный уровень и уровень приложения, но все же.
В любом случае интересно, мозги шуршат.
https://overreacted.io/progressive-json/
Пару дней назад Дэн Абрамов написал статью объясняя новый тип стриминга данных с сервера. Обычно, когда мы стримим данные, мы стримим строчку за строчкой или отправляем какие-либо инкрементальные сообщения. Тут предлагается отправлять json используя обход дерева в ширину. Ну, те самые ненужные структуры данные и алгоритмы.
Т.е. сперва вы поймаете верхнюю структуру с ключами-заглушками, которые поступят позже:
{
"imageUrl": "$1",
"title": "$1",
"comments": "$3"
}
Вот эти $1, $2, $3 это как раз те заглушки, которые обработаются на клиенте как промис. Это позволяет разбить все данные на куски и отправлять их по мере готовности и оптимизировать запросы на стороне сервера. Таким образом, мы можем начать заполнять данные на странице по частям, а не ждать пока все загрузится. С одной стороны эти запросы можно разбить на несколько частей и грузить параллельно, но что если нам для каких-то целей удобнее грузить что-то одним потоком?
Оказывается именно так и подгружаются серверные компоненты в React. Приложение тоже своего рода дерево. Дэн Абрамов объясняет, что Progressive JSON позволяет загружать данные по частям, что делает загрузку более эффективной и отзывчивой. При этом мы всегда знаем, какие компоненты еще не загрузились и можем отобразить их в виде заглушек.
Понятное дело, что тут они оптимизирут отправку иерархической структуры данных по сети. Я подозреваю, что оно ляжет в один поток QUIC. Т.е. если бы можно было разбить этот стрим на несколько, то quic смог бы тянуть несколько потоков? Я понимаю, что смешиваю транспортный уровень и уровень приложения, но все же.
В любом случае интересно, мозги шуршат.
https://overreacted.io/progressive-json/
overreacted.io
Progressive JSON — overreacted
Why streaming isn't enough.
👍66❤19😁8👀3🤣2😢1
Я почему так возбудился. Просто я в своё время реализовывал похожую штуку, где протокол придумывали головастые Си программисты.
Без извращений с особенностями браузера не обошлось, хотя на заднеприводных сокетах проблем у ребят не возникало.
https://www.tg-me.com/seniorsoftwarevlogger/1226
Без извращений с особенностями браузера не обошлось, хотя на заднеприводных сокетах проблем у ребят не возникало.
https://www.tg-me.com/seniorsoftwarevlogger/1226
Telegram
Senior Software Vlogger
Как в моем UI приложении память гигабайтами текла
Лет 5 назад дело было, можно и рассказать, тем более, что весь код в опенсорсе. В те годы я работал техлидом фронтенда в компании Mesosphere. Пилил DC/OS UI. В сердце DC/OS стоял Mesos — система управления…
Лет 5 назад дело было, можно и рассказать, тем более, что весь код в опенсорсе. В те годы я работал техлидом фронтенда в компании Mesosphere. Пилил DC/OS UI. В сердце DC/OS стоял Mesos — система управления…
🔥11🤣3❤2👀2🤓1
Please open Telegram to view this post
VIEW IN TELEGRAM
2🤯107😁75🌚23😢10✍8👏7💯6 6🆒4😱3👾1
Ваше повышение — это не работа менеджера.
Извини друг. Присядь. Дыши.
Отлегло? Ну поехали.
Менеджер должен следить от джуна до мидла. Ну с натяжкой от мидла до сеньора. Дальше вы промоутите сами себя.
Сами уточняете ожидания. Сами чекаете, что ожиданиям соответствуете. Сами охотитесь на проект с импактом. Сами всем везде коммуницируете как проект хорошо идёт и сколько пользы он нанес. Сами вовлекаете менеджера, чтобы он закрыл те разрывы, которые вы ввиду должности закрыть не можете. Сами идете с запросом на коучинг как к менеджеру так и к бадди. Просите менеджера найти вам бадди если хз.
САМИ ГОВОРИТЕ ПРЯМО РТОМ, ЧТО РАБОТАЕТЕ НА ПОВЫШЕНИЕ.
На высоких уровнях даже черновики промо документов люди сами за себя часто пишут.
Любой или все из этих пунктов может делать вас менеджер по своей инициативе. Но вы же не хотите просрать пару лет чтобы потом вам сказали: ты не говоришь, что хочешь идти на стафф. Поэтому работаем.
Да, менеджеров это касается в первую очередь. Там ещё надо грамотно через голову работать и искать спонсоров среди скипов и выше.
Последнее: ваш менеджер должен быть заинтересован в вашем повышении, что бы это ни значило.
Извини друг. Присядь. Дыши.
Отлегло? Ну поехали.
Менеджер должен следить от джуна до мидла. Ну с натяжкой от мидла до сеньора. Дальше вы промоутите сами себя.
Сами уточняете ожидания. Сами чекаете, что ожиданиям соответствуете. Сами охотитесь на проект с импактом. Сами всем везде коммуницируете как проект хорошо идёт и сколько пользы он нанес. Сами вовлекаете менеджера, чтобы он закрыл те разрывы, которые вы ввиду должности закрыть не можете. Сами идете с запросом на коучинг как к менеджеру так и к бадди. Просите менеджера найти вам бадди если хз.
САМИ ГОВОРИТЕ ПРЯМО РТОМ, ЧТО РАБОТАЕТЕ НА ПОВЫШЕНИЕ.
На высоких уровнях даже черновики промо документов люди сами за себя часто пишут.
Любой или все из этих пунктов может делать вас менеджер по своей инициативе. Но вы же не хотите просрать пару лет чтобы потом вам сказали: ты не говоришь, что хочешь идти на стафф. Поэтому работаем.
Да, менеджеров это касается в первую очередь. Там ещё надо грамотно через голову работать и искать спонсоров среди скипов и выше.
Последнее: ваш менеджер должен быть заинтересован в вашем повышении, что бы это ни значило.
❤62👍30✍7😁6🤣3🌚2👀2🔥1
Я на айти Ютубе 13 лет и вот так эволюционировали интересы аудитории:
2012: техничка, обучение, мясо
2018: софт скилы
2020: вкат
2023: как наебать 3 работодателя сразу
2025: 3 признака, что вас скоро сократят
2012: техничка, обучение, мясо
2018: софт скилы
2020: вкат
2023: как наебать 3 работодателя сразу
2025: 3 признака, что вас скоро сократят
🤣276🤗30💯11😢10✍7😁6🔥4👍3❤1
Новое мать его видео!
Операционная система для ИИ агентов и huly.io вы им сделаете? Андрей Платов
Вот вы говорите ИИ агенты? А где агенты будут жить, как будут взаимодействовать между собой и с людьми? Как будут платить за свою жизнь и будут ли они воровать не только нашу работу, но и все, что плохо лежит?
Все эти вопросы я разобрал с Андреем Платовым. Андрей в прошлом известен по компании XORED, теперь Андрей развивает свой стартап Huly, в котором, в том числе есть место и ИИ сотрудникам.
https://youtu.be/GfnueD7jEzw
Операционная система для ИИ агентов и huly.io вы им сделаете? Андрей Платов
Вот вы говорите ИИ агенты? А где агенты будут жить, как будут взаимодействовать между собой и с людьми? Как будут платить за свою жизнь и будут ли они воровать не только нашу работу, но и все, что плохо лежит?
Все эти вопросы я разобрал с Андреем Платовым. Андрей в прошлом известен по компании XORED, теперь Андрей развивает свой стартап Huly, в котором, в том числе есть место и ИИ сотрудникам.
https://youtu.be/GfnueD7jEzw
❤24🤣15🔥3👏3🌚2
1. Добавил в прошивку поддержку ZMK Studio - возможность редактировать раскладку из браузера. Это как VIA или Vial.
2. Вывел контакты под экранчик, хоть у микрушки с ним сейчас проблемы
3. Почти допеределал вторую половинку корпуса
Финишная прямая.
Обнова: экран завёлся 🤯 фото в сторис.
2. Вывел контакты под экранчик, хоть у микрушки с ним сейчас проблемы
3. Почти допеределал вторую половинку корпуса
Финишная прямая.
Обнова: экран завёлся 🤯 фото в сторис.
🔥57👍5❤3👀3
Ну что, как рыночек, ребята? Уже не в нашу пользу? Сейчас еще обиднее получить собеседование в хорошую компанию и провалиться. Потому что второго шанса уже может не быть. Сам плавал... знаю. Я собеседуюсь на менеджера и у меня другие этапы, но, нанимая программистов, да и сам будучи программистом, я наблюдал что люди часто срезаются на алгосиках. А их спрашивают все биг техи, да и компании поменьше тоже просят.
К счастью, этот этап можно натренировать. Еще легче это сделать если помогает человек, который уже собаку съел на алгосиках и может подтвердить опыт оферами из бигтеха.
Макс как раз такой парень — работал в куче бигтехов РФ, а в от тех где не работал — получал оферы на >400k.
Макс готовит к алгосикам, разбирает с вами самые частые задачки, делится хаками. Перед курсом “алгоритмы и структуры данных для собеседований” вас ждет бесплатный открытый урок, посетив который вы получите скидку.
Ноль причин скипать, го регаться 👈
#реклама, ИП Фатин Максим Романович, ИНН 525406426719
erid: 2VtzqxT2D9g
К счастью, этот этап можно натренировать. Еще легче это сделать если помогает человек, который уже собаку съел на алгосиках и может подтвердить опыт оферами из бигтеха.
Макс как раз такой парень — работал в куче бигтехов РФ, а в от тех где не работал — получал оферы на >400k.
Макс готовит к алгосикам, разбирает с вами самые частые задачки, делится хаками. Перед курсом “алгоритмы и структуры данных для собеседований” вас ждет бесплатный открытый урок, посетив который вы получите скидку.
Ноль причин скипать, го регаться 👈
#реклама, ИП Фатин Максим Романович, ИНН 525406426719
erid: 2VtzqxT2D9g
mnlp.cc
Вебинар про алгоритмические собеседования от А до Я
Что внутри?– 3 главные ошибки, из-за которых решение задач на LeetCode не дает результата–Почему решать много задач на LeedCode — не всегда хорошо?–Правила подготовки, которые приведут тебя к оферу (О
🤣121🌚11👍6❤5🫡3🤯2🤓1
Про долги Фила Ранжина
Филу надо помочь поэтому ни в коем случае не давайте Филу в долг.
Мне Фил остаётся должен 900 баксов, и как бы хер с ним, но Фил писал в личку совсем рандомным твиттерским. Поэтому я не могу вас не предупредить.
https://teletype.in/@insalander/the_debts_of_phillip_ranzhin
Филу надо помочь поэтому ни в коем случае не давайте Филу в долг.
Мне Фил остаётся должен 900 баксов, и как бы хер с ним, но Фил писал в личку совсем рандомным твиттерским. Поэтому я не могу вас не предупредить.
https://teletype.in/@insalander/the_debts_of_phillip_ranzhin
Teletype
Множественные долги Филиппа Ранжина
Эту публикацию я села писать 7 июня, на следующий же день после того, как в Твиттере пошел слушок о каких-то дичайших суммах, которыми...
😁90😢24🤝11🤯6🌚4❤3🤣3👍1
Очевидно, японец, сделал кастомный НОЖНИЧНЫЙ сплит 🤯 это в прямом смысле apple клава в формате сплита. По ссылке полная инструкция как повторить это чудо.
Я крепко задумался.
https://note.com/copkbd/n/n619a4a6dbea7
Я крепко задумался.
https://note.com/copkbd/n/n619a4a6dbea7
note(ノート)
メンブレン+シザー方式で無線分割キーボードを自作した話|cop
はじめに 今回は新作として「メンブレン方式」と「シザー(パンタグラフ)方式」を組み合わせた無線分割キーボードを自作しました。 この組み合わせは既製品のキーボードではおなじみの構造ですが、自作の題材としてはまだ珍しくこの記録がどなたかの参考になれば嬉しいです。 というわけでまずは完成品をご覧ください。仮の名称として「Magic Split」と呼んでいます。 毎度のことながら販売の予定はございません…メンブレンなので欲しい方がいるか不明ですが ◎ 制作にあたり、JLCPCBさんに提供(ケース制作)していただきました。…
🔥38👍6😁4❤1🤓1
Что делать будем когда айтишников станет ПРЯМ СЛИШКОМ МНОГО? типо че делать, ведь хорошие спецы тож будут. Со временем ведь "воздух" закончиться
По условиям рынка:
- Вакансии кончатся
- Зарплаты пойдут вниз
- Часть свичнется из айти обратно ну или впервые, если айти это ваша первая работа. Тут шансов конечно меньше ведь айтишники буквально не приспособлены к жизни вне теплицы.
И рынок придет к балансу.
В то, что миру нужно бесконечное количество софта я не верю.
Вопрос можно задать через кнопку "меню"
❤47💯17✍9🤣8👍4😢2
Америка открывает для себя волчистость. Все сети гудят из-за Сохама Пареха, который за 4 года был нанят 49 раз и одновременно (хуёво) работал из Индии в нескольких стартапах.
По крайней мере один из владельцев писал в Иксе, что раскусил челика ещё год назад и уволил через неделю наказав перестать обманывать людей.
В то время как РФ уже отстроили процессы найма, в США только проходят стадию шока. Санитары найма полечат рынок и там 🐺 ауф
По крайней мере один из владельцев писал в Иксе, что раскусил челика ещё год назад и уволил через неделю наказав перестать обманывать людей.
В то время как РФ уже отстроили процессы найма, в США только проходят стадию шока. Санитары найма полечат рынок и там 🐺 ауф
👍55🤣46❤7🤯5
С Максимом Страховым разбираем как хакнуть performance review / promo в Бигтехе. Практические советы и масса годноты.
https://youtu.be/POmPyB11LiQ
https://youtu.be/POmPyB11LiQ
🔥25❤3👍3👀2🌚1
Вайб кожу тут под мак ос
Audio kit определяет, что микрофон выдает 4.8k, но при попытке записи падает тк частота файла и железа не совпадает.
Оказывается там что-то типа 6 лет баге. Микрофон то 16к. Просто аудио кит его неправильно определяет.
Т.е. один и тот же код работает для встроенного микрофона, но падает для яблочных наушников Beats.
Весело там у вас оказывается 😏
Ну ок. Это я загуглил и победил после тщетных попыток клода из vscode пофиксить баг.
Но перед этим Claude code меня водил кругами пытаясь сохранить два потока аудио в разные файлы: с микрофона и "колонок" соответственно.
В конце концов он выпилил "сложную" часть записи колонок через виртуальное устройство Blackhole и честно написал в UI, что эта фича в разработке.
Оставив только запись с микрофона.
Которая не работала.
Audio kit определяет, что микрофон выдает 4.8k, но при попытке записи падает тк частота файла и железа не совпадает.
Оказывается там что-то типа 6 лет баге. Микрофон то 16к. Просто аудио кит его неправильно определяет.
Т.е. один и тот же код работает для встроенного микрофона, но падает для яблочных наушников Beats.
Весело там у вас оказывается 😏
Ну ок. Это я загуглил и победил после тщетных попыток клода из vscode пофиксить баг.
Но перед этим Claude code меня водил кругами пытаясь сохранить два потока аудио в разные файлы: с микрофона и "колонок" соответственно.
В конце концов он выпилил "сложную" часть записи колонок через виртуальное устройство Blackhole и честно написал в UI, что эта фича в разработке.
Оставив только запись с микрофона.
Которая не работала.
😁55🫡10🤣5❤2👀1👾1