Some Sort of Cok


Гео и язык канала: не указан, не указан
Категория: не указана


Личный блог

Связанные каналы

Гео и язык канала
не указан, не указан
Категория
не указана
Статистика
Фильтр публикаций




Achievement unlocked.

#lol #achievement


gygol horoshiy perevodchik

#lol #fun


Так перед BOM или после? Opus5, кстати.

#wtf


Дуров создал то, что было показано в Кремниевой долине и к чему в итоге пришёл Ричард Хендрикс. Буквально подполье интернета, в которое поисковики не засовывают носа.

Есть сообщения, есть каналы, есть группы, есть посты, есть внутренний веб.

#b


Репост из: Elchin's opinions
Впервые вижу CLI-версию Microsoft Store! Я не видел упоминание об этом, а нашёл я её, исследуя само приложение ms store.


а должно как музыка блять


Абсолютно валидный код
@
Абсолютно нерабочий код

interface Children {
text: string;
parent: Parent;
children: Array
}

interface Parent {
text: string;
children: Array;
}

const parentNode: Parent = {
text: 'parent',
children: []
}

const childrenNode: Children = {
text: 'child-01',
parent: parentNode,
children: []
}

parentNode.children = [childrenNode]

Попробовать: https://vk.cc/d1QI1G

#ts


Фри промо в Яндекс.Путешествиях.

#yandex #cheese


Fix Price, какого х...?!

#wtf #испорчено


Раз уж такая горячка пошла, вот список того, что мне показалось интересным.

День 1

12:00 — Витя Вершанский будет вещать про свой опыт со стороны. На HolyJS он легенда. Стоит послушать.

Затем, в 15:00, аж два доклада и воркшоп в параллели, на которые уж очень хочется сходить.
- Первый от моего коллеги, Дениса Кондратьева, который помогал мне с подготовкой моего доклада, про ваншоты задач ИИшкой. Ну как я могу не сходить?!
- Второй от Василия Алфертьева про инкрементальные вычисления. Концептуально звучит интересно. Странно, что записали в практики разработки, а не в архитектуру, но, скорее всего, на то есть причина.
- И последний, но не по значению. Андрей Кузьменко будет рассказывать про "JS, микроконтроллеры и ИИ". Очень хотелось бы посмотреть на этот нёрдовый доклад, т.к. сам давно увлекаюсь микроплатами, а в последнее время засмотрелся на Tessel 2.

16:15 — Антон Непша, по всей видимости, собрал для нас список изменений и покажет, что из себя представляет нынешний React Compiler. В React@19 много концептуальных сдвигов, из-за чего я/мы не можем на них свободно перейти у себя. Оттого только больше хочется послушать тех, кто уже работает с этой технологией.

17:30 — Денис Чернов будет яро отстаивать (я даже попытался противостоять в одном из чатиков) ненужность микрофронтов и делёжку на модули. Остальные доклады в параллели, мне кажется, будут скудноваты на контент. Елена Попова, конечно, принесла интересный доклад, и я даже видел их внутреннюю систему и метрики, но кто её вам даст?! Ожидаю, что там будет чисто внутренняя история, повторить которую вне контура Т будет ой как непросто.

Отдельно, кстати, стоит доклад от психолога, который для меня по большей части очевиден (у меня рефлексия 999 уровня, если что). Немного иронично, что я тоже подавал доклад, который почти на 100% не про разработку, а про мышление, но его отклонили.

День 2

10:45 — Василий Ванчук проведёт аналогии между шаурмой и информационной системой. Аналогии — зло, т.к. у них свой контекст и легко запутаться между изначальным тезисом и искажённым. Но, думаю, послушать доклад от человека, который фильтрует доклады на входе в HolyJS, стоит.

12:00 — Настя Котова расскажет про архитектуру NextJS App Router. Настя, кстати, у себя в канале уже делала цикл статей-разборов. Возможно, стоит ознакомиться. Другие доклады не откровенный non-match для меня, но очень близко к нему. Не очень понимаю, что может заинтересовать в OTeL или что может дать обрезок Figma MCP.

13:15 — Витя Хомяков про Self-Profiling API. Браузерное/хостовое API. Интересно послушать, как оно применилось на практике, на каких масштабах, к чему привело и, конечно же, про подводные камни, ведь ни Chrome единым. Есть же всякие TG/Qt браузеры, кастомные сборки (сканер цены в пятёрочке, например).

15:00 — Александр Зайцев встанет в роль учителя и даст экскурс про V8. Не трогал внутрянку браузеров прям так плотно, как рыба в воде не плаваю, как говорится, а потому обучающий основам доклад хотелось бы в себя впитать. Кстати, почему никто не говорит про SpiderMonkey или JavaScriptCore?

16:15 — тот самый доклад, о котором в посте выше. CI/CD, GitLab, Docker, Linux, хардовость, как я люблю, от Ивана Малюгина. Уже возложил на него большие надежды. Про BDUI в очередной раз слушать не интересно, про это ещё в 25 году ВК писали. Про обучение нейронки на JS интересно в целом, но у меня три разные книги некоторой степени прочитанности, поэтому ничего нового для себя там не ожидаю.

17:30 — снова два интересных доклада и воркшоп в параллели.
- Марат Зимнуров будет формировать формально доказуемый TS код и сделает так, чтобы ИИ сам себя проверял. Название подкупает, а связь с историей добавляет колорит. Ожидаю, что в докладе будет много необычного.
- Роман Ганин расскажет про хакатон, где каждый выбрал свой стейт-менеджер и к чему это привело. Fail-story, наконец-то! А то везде успешный успех.
- Воркшоп сразу от двух докладчиц: Марии Палагиной и Елены Поповой. Фундаментальные вопросы, к которым я почему-то не пришёл.

Вот такой путь. Увидимся на конференции.

#holyjs #conf #event


Предсказание на доклад.

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

1. Чуть выше уже есть небольшой спойлер. Если кто до сих пор использует kaniko для билда, то пора бы его уже отпустить. Тем более, что есть более простой путь — перестать билдить в докере вообще. Всё, что вам/нам надо — это сбилдить статику обычными средствами, а затем к base image добавить слой с этой статикой сверху через crane append. Никакого билда, занимает миллисекунды. Выглядит примерно так:
build-app:
image: node:24
script:
- npm ci
- npm run build
- tar cf static.tar . --directory dist/
artifacts:
paths:
- static.tar

build-image:
image: gcr.io/go-containerregistry/crane:v0.21.9
script:
- |
set -e
BASE=$(crane digest --full-ref your-registry/angie-base:1.10.0)
crane mutate "$BASE" --append static.tar -t "$CI_REGISTRY_IMAGE:$CI_COMMIT_SHA"
2. idmapped вместо slow_chown. Подсказка от 😒. В linux-kernel 5.12 завезли mount_setattr, которая позволяет делать грязь. Ранее все образы проходили через overlayfs со своим UID/GID. Соответственно, чтобы всё работало без лишних вопросов, ребята из Docker в своём containerd сделали рекурсивный chown на текущего пользователя. В overlayfs фича заехала в версии 5.19, а для tmpfs для kubernetes executor пришлось подождать ещё — поддержка появилась аж в 6.3. Выглядит это так:
mkdir /tmp/src /tmp/idmapped
echo hi > /tmp/src/file # owned by root:root (0:0) on disk

mount --bind -o X-mount.idmap=b:100000:0:65536 /tmp/src /tmp/idmapped

ls -n /tmp/src/file # 0 0 file
ls -n /tmp/idmapped/file # 100000 100000 file
Где в mount есть следующие параметры: id-type:id-mount:id-host:id-range. id-type — u (user), g (group), b (both). id-mount — что увидим при монтировании. id-host — что на самом деле на хосте.

В containerd:
version = 3

[plugins.'io.containerd.snapshotter.v1.overlayfs']
# false (default): refuse userns pods if the kernel/fs can't do idmapped mounts
# true: silently fall back to recursive chown — the 38-second path
slow_chown = false
В k8s:
apiVersion: v1
kind: Pod
spec:
hostUsers: false
containers:
- name: build
image: gcr.io/go-containerregistry/crane:debug
В 👩‍💻:
`runners`.`kubernetes`.`pod_spec`
name = "hostUsers"
patch_type = "strategic"
patch = '''
hostUsers: false
'''
3. Оптимизация самого билда. В первом пункте я легонько написал npm run build, хотя за ним может стоять целая куча всего. Инкрементальные сборки только того, что изменилось, с remote кешем уже доступны в turbopack. Выглядит это так:
turbo login --manual # для community remote-cache реализаций
turbo link
turbo run --filter=[HEAD^1]
Есть альтернатива в виде nx affected. Но ею не пользовался.

Также стоит сказать про кеши зависимых модулей. Если используете pnpm, то у него есть pnpm store для задания пути кешей, а в связке с артефактами CI/CD единственное оставшиеся — это их получение и отправка на шаг сборки.

4. fsync. Головная боль любого пакетного менеджера. Это именно из-за него ваш антивирус убивает ПК на npm i. Хз, как порешают. 😒 говорит, что есть ulimit -n для уменьшения открытых файловых дескрипторов, cp --reflinks=always (задаётся FICLONE через syscall ioctl) для любителей (pnpm, смотрю на тебя) ссылаться, volatile в опциях mount.

Посмотрим, насколько хорошо вышло угадать на самом докладе.

#прогноз #holyjs #conf #event #cicd #optimization


Видео недоступно для предпросмотра
Смотреть в Telegram
text-emphasis: "


Opus 5 на максималках, кстати.

#fun


Ржу

#fun


Видео недоступно для предпросмотра
Смотреть в Telegram
Сегодня уже уезжаю. Спасибо, Краснодар! Спасибо команде krd.dev! Спасибо всем ребятам! Приятно было пообщаться.

#krd #event


Тред для вопросов. Отвечаю асинхронно.

#conf #krd #event


Сегодня на глаза попадается эта картинка. Совпадение? Не думаю.

#fun #perf #web


https://t.me/kod_zheltyi/2037

Худшая фраза всех времён. Прозрачность и есть контроль. Автономия есть ответственность одного. Доверие к системе, но не к друг другу.

#wtf #tbank #умныемыслидогонялиего


Видео недоступно для предпросмотра
Смотреть в Telegram
А пока вот какие гениальные мысли меня настигают (уже задолбался по 20 раз перерисовывать).

#fun

Показано 20 последних публикаций.