TGViewer
Channel Public Channel
Сова пишет…

Сова пишет…

@sergeysova

14+ лет инженерю фронтенд, руковожу и обучаю.

По внедрению AI в ваши процессы и код, пишите в личку канала
Subscribers
2.99K
Photos
369
Videos
37
Links
439

Showing posts older than #1185 · Back to latest

Older Posts 18 shown
Post #1183 3K
Сова пишет… Ага, я вижу понимание начало приходить. А ведь я еще несколько лет назад, рассказывал о том, что нужно разделять view, model и viewmodel. Непонятно, только зачем было придумывать новые названия и термины. https://github.com/ProjectINT/palistor
ну и со скришота важное:

странное желание отделить поведение от данных.
это ж не тестируемые части получаются
Post #1182 2.88K
Ага, я вижу понимание начало приходить.

А ведь я еще несколько лет назад, рассказывал о том, что нужно разделять view, model и viewmodel.

Непонятно, только зачем было придумывать новые названия и термины.

https://github.com/ProjectINT/palistor
  • 🌚 5
  • ❤ 3
Post #1180 3.32K
  • 😁 15
  • 👎 3
  • 💅 3
  • 👍 1
  • 🤔 1
  • 🌭 1
Post #1177 3.43K
Тем временем современные стартапы из YC
  • 👍 8
  • 😱 3
  • 👎 2
  • 😁 1
  • 🗿 1
  • 💊 1
Post #1176 3.37K

Forwarded from Дизраптор

Используете чужой код (пусть даже открытый)? Не забудьте прочитать все условия

Расскажу вам очень показательный кейс (за наводку спасибо The Edinorog).

Есть такая китайская компания Bambu Lab. Это крупнейший в мире производитель 3D-принтеров. Её в 2020 основали выходцы из DJI, потом был бешеный рост, а уже в 2025 (всего за 5 лет) она стала топ-1 в мире по продажам 3D-принтеров (не промышленных, а для обычных людей и малого бизнеса). Сегодня она поставляет аж 8 из 10 потребительских 3D-принтеров в Китае и стоит несколько миллиардов.

В общем, образцовый tech-стартап. Что может пойти не так?

Недавно Bambu Lab подала в суд на польского разраба Павла Ярчака. По словам компании, Павел замутил реверс-инжиниринг её софта и "угрожает её безопасности". Казалось бы: ну ок, компания защищает свои наработки и судится в неаккуратным частником. Обычное дело. Но вокруг Bambu Labs начался скандал, tech-инфлюэнсеры развернули кампанию против неё, юзеры начали массово кэнселлить, некоторые крупные клиенты - переходить на 3D-принтеры конкурентов. А в перспективе у Bambu могут быть ещё более серьёзные проблемы.

Дело вот в чём:

Слайсер Bambu (это программа, которая режет 3D-модель на слои для печати - ключевой софт 3D-принта) - это форк форка. Они взяли открытый PrusaSlicer и сделали форк поверх него. А этот PrusaSlicer - сам по себе форк ещё более древнего Slic3r.

Вообще, это обычная практика. Опенсорс часто переваривают по 100500 раз и спокойно используют для своих целей. Но конкретно этот код был не совсем опенсорсом. Смотрите, вот есть копирайт - обычное авторское право: "это моё, другим нельзя". А есть "копилефт", буквально "авторское лево". У кода тоже есть владелец, но он разрешает брать свой код, менять его, продавать и делать с ним что в кайф. Но с важным условием - всё производное от копилефта обязано остаться таким же открытым.

Slic3r (с которого и началась вся форк-цепочка) - это как раз копилефт. А китайцы из Bambu взяли его переваренную версию, переработали её под себя, но свой результат закрыли для других. Но потом некий анонимус сделал свой форк из слайсера Bambu, а уже его форкнул этот польский разраб. И получил бумагу от китайцев. Надеюсь, у вас не взорвался мозг (если взорвался, то ничего, в ограниченных дозах полезно 👍).

Копилефт - это хоть и открытая штука, но тот, кто его использует, должен жёстко следовать лицензии. Bambu обязан был открыть свой код для других, и не имел права кого-то буллить.

Теперь компании придётся это всё разруливать. Серьёзный репутационный удар - это ещё не всё:

Вариант один - им придётся открыть свой код. На продажу самих 3D-принтеров это не повлияет, но "лочить" юзеров в своих облаках, вводить подписки и прикручивать другую монетизацию может быть сильно тяжелее. Вся бизнес-модель Bambu заточена на бурный рост и будущую выручку, и удар по монетизационным возможностям серьёзно расстроит инвесторов и подкосит их будущие раунды и оценку.

Вариант два - если не согласятся открыть, то им запретят распространять всё ПО, построенно на копилефте. Тогда придётся переписывать софтовое ядро для всех устройств, включая уже проданные.

С одной стороны, сами виноваты, надо было внимательно читать условия. А ещё лучше - делать свой проприетарный код, раз уж метите в миллиардные оценки. Ну или хотя бы не палиться через левые предъявы инди-разрабам.

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

Дизраптор
The Verge ‘Fuck you, Bambu’: How one private message could change the face of 3D printing Thousands are daring Bambu to take legal action.
  • 🔥 7
  • 🤯 5
  • ❤ 3
  • 👍 2
  • 🥱 2
Post #1174 2.73K
Пишу все Rust проекты в Zed Editor с момента его релиза v1.0

На удивление гладко переехал с VSCode/Cursor. Чем больше пользуюсь, тем приятнее.

За несколько последних версий, еще и rustc стал побыстрее собирать проекты.

На днях написал простой проект на Rust, aisdk и sqlite без нейронок, чтобы почувствовать тот старый вайб ручного программирования.
  • 👍 11
  • 👨‍💻 5
  • 🔥 1
  • 🤝 1
Post #1171 3.13K

Forwarded from Pavel Zloi

Пока все шумят про it's revolution, Johnny обновление Codex я наткнулся на вот это видео, поначалу всё было как обычно, коробочка на базе ESP, но под конец я немного подафигел.

И так, в нём идёт речь про экосистему оборудования Genesis созданную компанией Axiometa, скорее всего вам всё это ничего не говорит, но возможно вы когда-то слышали про микрокомпьютеры ESP и Arduino, которые позиционируются как коробочки для обучения микроэлектронике для самых маленьких в формате эдакого конструктора.

И вот представьте, что вместо классических плат прототипирования, проводков и электронных элементов у вас плата со входами аля Raspberry Pi и 50+ готовых заменяемых стандартизированных модулей, любой их которых можно подключить в плату и собрать коробочку с нужными модулям себе по вкусу.

Но самое любопытное в том, что Axiometa реализовали Axiometa Studio которая позволяет общаться с агентом Axie, просто пишешь какие модули есть и что хочешь сделать, а нейронка в формате вайбкода генерирует решение заточенное под текущий набор модулей. Готовую прошивку можно сразу из браузера залить на железку.

PS. К сожалению в Россию коробочки можно доставить только через байеров (сервисы доставки типа сдек шопинг).
  • 🔥 10
  • ❤ 3
  • 😍 3
  • 👎 2
  • 👾 2
Post #1170 3.24K
В комментах ссылка на github
  • 😁 46
  • ❤ 2
  • 👎 2
  • 🔥 2
Post #1169 2.13K

Forwarded from Dev News от Максима Соснова

portless

Утилита от Vercel Labs, которая открывает урлы вида http://localhost:3000 на именованных доменах .localhost. Например, вместо http://localhost:3000 можно открывать https://myapp.localhost. Из коробки поддерживает HTTPS и HTTP/2.

Работает просто:

portless myapp dev   # https://myapp.localhost


portless сам выпустит сертификат и даст доступ к https. Поддерживаются разные фреймворки, порты, под-домены, монорепозитории.

Из интересного - подхват git worktree. Если portless видит, что приложение запущено из worktree, то название worktree становится именем домена



https://github.com/vercel-labs/portless

#development #tools #localhost #vercel #devtools #github
GitHub GitHub - vercel-labs/portless: Replace port numbers with stable, named local URLs. For humans and agents. Replace port numbers with stable, named local URLs. For humans and agents. - vercel-labs/portless
  • 👍 22
  • 🔥 8
  • ✍ 3
  • 😁 2
  • 👎 1
Post #1168 2.12K
Какое интересное API предлагает команда Google Chrome

Теперь можно делать автоматические замены HTML-шаблона на реальный контент, в момент, когда контент будет доступен.
Хоть стриминг, хоть через javascript.

Когда браузер видит


<div>
<?marker name="placeholder">
</div>


он игнорирует <?marker>, но позволяет позже на него сослаться.

А когда контент загружен или отправлен с сервера, достаточно разместить в DOM:


<template for="placeholder">
Here is some <em>HTML content</em>!
</template>


Бразуер автоматически заменит <?marker name="placeholder"> на содержимое между соответствующими тегами <template for="placeholder">.

По мне это выглядит крайне годно, позволяя в будущем отказаться от кучи кода для обработки стриминга HTML.

P.S.
<?marker> подобные инструкции уже давно есть в XML, но браузер их игнорирует, если встречает в HTML. Это значит, что разметку можно использовать уже сейчас и ничего не сломается, а для разработчиков опережающих зеленые браузеры есть полифилл.


Крайне рекомендую почитать оригинальную статью:
https://developer.chrome.com/blog/declarative-partial-updates?hl=en
  • ⚡ 12
  • 👍 9
  • 😱 3
  • 🔥 2
  • 😐 2
  • 👎 1
Post #1167 1.87K

Forwarded from CSS mind

А вы знали, что next ломает вам типизацию перменных?

Если вы напишите ...

@property --var {
syntax: "<percentage>";
initial-value: 0%;
inherits: true;
}

...то next оптимизирует до initial-value: 0;, потому что cssnano в текущей последней версии next считает что это хорошо.
И работает конечно ничего не будет.

Что делать?

Писать initial-value: 0.0%;, либо менять тип на <length-percentage>.

Ну и ждать пока next обновит версию cssnano.

P.S. первый ночной пост в канале 👩‍💻🌚
  • 👍 10
  • 👎 6
  • ❤ 4
Post #1166 1.97K
У меня есть 3D принтер Ender 3 S1 Plus

Ковыряю его уже какое-то время, недавно залил стороннюю прошивку, стало куда веселее.

Учитывая, что Marlin(прошивка) опенсорсная, я заинтересован вдвойне. Правда там все на Си, так что приятного мало, но вон 1М строк с zig на rust мигрировали, тут тоже вполне можно.

У моей версии принтера нет закрытой камеры, так что ABS пока мне не дается.

P.S. еще проблемы с выравниваением частенько. CR touch работает всрато, иногда не открывается и печать не идет.
Пока хз как починить. Мб прошивку еще поковыряю в свободное время
  • 👎 12
  • 🔥 6
  • 🤝 4
  • 👍 3
  • 🦄 1
Post #1165 2.12K
Всем доброе утро!

Тут накидали справедливых за капюшоны.
Что ж, помимо уже обещанного материала докинем еще всякого в курс.

Всё же, за эти два года в разработке многое поменялось: агенты, фреймворки, инструменты.

🧡
  • 😡 32
  • 😁 6
  • 👎 4
  • 🔥 4
  • 👍 1
Post #1164 2.23K
Сова пишет… О чём этот канал Меня зовут Сергей Сова, я software engineer с 14+ годами коммерческого опыта. Больше всего меня знают по React, TypeScript, Effector и разговорам про frontend-архитектуру, но вообще я успел потрогать довольно много всего: начинал с игр на…
А кто ставил 😡 на предыдущий пост, напишите, че как?

Что не нравится? Какая претензия?
  • 😡 54
  • 😁 11
  • 👎 3
  • 😐 3
Post #1162 3.22K
О чём этот канал

Меня зовут Сергей Сова, я software engineer с 14+ годами коммерческого опыта.

Больше всего меня знают по React, TypeScript, Effector и разговорам про frontend-архитектуру, но вообще я успел потрогать довольно много всего: начинал с игр на C++ Source Engine, писал backend на PHP, Ruby, Node.js и Go, последние годы активно ковыряю Rust, AI tooling, агентные системы и свои микростартапы.

Этот канал о том, что мне интересно, а интересно мне довольно многое:
— React, TypeScript и Effector;
— архитектура frontend-приложений;
— Feature-Sliced Design и разделение ответственности;
— DX, tooling, типизация и библиотеки;
— AI-инструменты и агентные пайплайны;
— open source, обучение и продуктовая разработка;
— всякие инженерные находки, боли и размышления.

Обычно мне интереснее не «какую библиотеку поставить», а почему проект превращается в кашу, где должна жить бизнес-логика, как не размазать всё по компонентам и как строить системы, которые можно менять без страха.

Сейчас я развиваю frontend.vision, пишу материалы для разработчиков, экспериментирую с AI-assisted education и постепенно возвращаюсь к регулярным постам.

В ближайшее время тут будет больше про Effector, React, архитектуру, useEffect, роутинг, бизнес-логику в компонентах, фабрики, эффекты, тесты, DX и всё то, из-за чего frontend становится либо нормальной инженерией, либо бесконечным болотом.

Ещё у меня есть личные консультации.

Могу помочь с React, Effector, FSD, архитектурой приложения, ревью кода, проектированием фичи, DX, TypeScript, tooling, API, миграционным планом или просто разобрать вашу инженерную боль со стороны.

Обычно за час-два можно довольно быстро понять, где настоящая проблема: в архитектуре, границах, процессах, данных, команде или в том самом useEffect, куда случайно сложили половину продукта.

Писать можно в личку: @sovasergey

Новичков приветствую.

В комментариях иногда бывает жарко, поэтому берегите перья.
  • 😡 48
  • ❤ 21
  • 👍 11
  • 🔥 6
  • 🤩 1
Post #1161 2.43K

Forwarded from Effector news (Сова)

☄️ @effector/router v1.0.0 release candidate

Новый роутер основан на идеях и коде atomic-router и argon-router. А так как последние уже не поддерживаются, то effector core team приняли решение о переносе проекта в организацию effector.

Чтобы перевести свой проект, нужно заменить зависимости предыдущего роутера на @effector/router@v1.0.0-rc.0 и @effector/router-react@v1.0.0-rc.0.

Кроме этого, из ломающих изменений сейчас необходимо использовать historyAdapter(history) или queryAdapter(history) для router.setHistory().
https://router.effector.dev/core/adapters.html

До полноценного релиза важно получить фидбек и истории переезда. В том числе, чтобы написать полноценный Migration Guide.

Репозиторий: https://github.com/effector/router
Документация: https://router.effector.dev

🧡
  • 🔥 13
  • 🎉 3
  • ❤ 2
  • 👎 1
  • 🤔 1
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →