Telegram Web Link
Интересно, что писатели-фантасты предполагали что роботы заменят людей в рабочих и инженерных специальностях, а человечество, освобождённое от тяжёлого труда, будет заниматься искусством.

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

Такой кадр, как на слайде, сделать на фото примерно невозможно. Хотя, конечно, можно набросать эскиз, придумать постановку, отснять десяток и посидеть вечер в фотошопе. За пару дней справитесь, но это уже все равно будет продукт компьютера.

ИИ же такое и подобное генерит за пару секунд целый мешок. Идёт очередная революция, но совсем не там, где ожидали. Где ожидали, у нас до сих пор TwinCAT ещё не тянет Визуал Студию 2022, поэтому тянем не старше 2019.
👍29😁7👎1
В Расте нет ООП с наследованием. Внезапно, есть. Вы можете эмулировать наследование, если используете Deref. Делаете новые методы у чайлда, перекрываете методы парента и все работает.

Но. В Расте это считается жёстким анти-паттерном и в приличных компаниях за такое бьют палкой по рукам. Deref допускается _только_ для смарт-поинтеров и некоторых контейнеров и кавер должен содержать минимум собственных методов, чтобы не путать пользователя.

Но где грань? У, например Rc, собственных методов довольно много. Я объясняю это студентам так:

Паттерн Deref(target=T) для S<T> допускается в случаях, если пользователь _явно_ понимает, что работает с T, а не с S. В обратном варианте - это очень и очень некошерно. Как бы вам это не казалось удобным.
👍15🔥3👎1
Напоминаю читателям, кому мало канала - у нас есть чатик. Заходите, не стесняйтесь.

https://www.tg-me.com/echo_ok
👍6😁3👎1
Я сегодня: пытаюсь понять почему не работает UART/RS485 на STM32 в Rust.

Google и ChatGPT: упорно советуют мне мои же чертежи 3-летней давности.
😁41👍1
В качестве апгрейда своих ембед-инструментов решил попробовать Embassy (https://embassy.dev). Собственно Embassy - это не очередная RTOS на Rust (они сами говорят, что они не RTOS), а фреймворк, который содержит HAL и минимальный async executor, работающий примерно везде, начиная от копеечных STM32(C)F0-1. И уже на базе него вы можете создавать свою RTOS, быстро и дешево. Ну или просто дергать HAL, без абстракций - дело ваше.

Embassy еще официально не вышел (на crates.io только резерв имен), но программить уже вполне можно.

Пока нравится.
👍9🔥6😁1
Открыл для себя WAGO TopJob. WAGO всегда делали отличные клеммы, но у TopJob 2002 есть особенность - при заявленной от 0.5 квадрата она отлично держит и более мелкие провода, хоть китайские патчкорды от ардуино-сделай-сам.

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

Рекомендую.
👍17😁2
Вчерашний пост внезапно породил бурную дискуссию о терминах в чатике. Подытожу, чтоб не путались.

К сожалению в русском (и украинском) одного термина не хватает, а один - свой, поэтому путаница случается. Буду приводить английские (и чешские) аналоги.

Итак, кабель. Кабель (cable, kabel) - это всегда что-то в обмотке и внутри много жил. Обычно с изоляцией.

Провод - внезапно, это тоже кабель. Отличие провода от кабеля - у провода проще изоляция и он для наружного применения (не для воды, земли и тд, хотя может жить в гофре). Этот термин - рождён ГОСТом, в других языках как правило аналога нет (говорят тоже кабель).

Жила (wire, vodič) - металлическая проволока с изоляцией.

Опять жила (core, žila) - отдельный волосок металла в многожильной (multi-core wire) "жиле" или вся жила в одножильной "жиле" (single-core wire).

Вот с жилой беда. Но в проде все равно матом.
👍20😁3👎2
Насчёт новинок осциллографов (ну каких новинок, я просто за рынком слежу раз в 10 лет) могу порекомендовать SeedStudio DSO Nano v3

Заявлено работает до 200кгц. Но размер впечатляет - в 3 раза меньше моего телефона.

Кстати корпус железный. Стрелки тоже. Внутри STM32F1
👍9💩2
как мы внедряли typescript
😁40🔥7👍2
sqlx/rust похоже пришёл к своему закономерному финалу. так все разъебали в 0.7, что по ходу пора тикать.

а жаль, хороший db-agnostic можно было строить
😁5👍2
This media is not supported in your browser
VIEW IN TELEGRAM
У популярных сервисов какое-то летнее обострение

- используйте 2FA!
- так я использую
- не выключайте!!!
😁16👍1
Про личный automotive.

Ковид, технологии и политики похоже автомобили добивают окончательно, по крайней мере у меня. На своей текущей я за 5 лет умудрился накатать аж 16 тыс, причем за последний год вообще 80(!). Тоесть тренд явно нисходящий. На природу я не езжу - мне до природы 3 минуты пешком. А в центр города цена убера туда-обратно уже сравнялась с ценой за 3 часа парковки. Да и что там делать, в этом центре, если 99% митингов теперь онлайн. А в соседние города я ездил на поезде еще до ковида. Сегодня твердо решил поехать за KFC, потом посмотрел что доставка 1 евро и заплакал.

В связи с чем, ищется недорогое в обслуживании транспортное средство, способное, если понадобится, километров 10 везти коробку килограмм 20, можно без пассажиров, но при этом чтобы выглядело прилично. Мотоциклы-мопеды не предлагать - для страны, где пол года идет дождь или снег - это не вариант. Пока смотрю на малолитражки Тойоты, но даже это будет из пушки по воробьям.

Есть варианты? Или как всегда, самому собирать?
👍9😁8
spawn задач в Rust - такой же антипаттерн, как channel::unbounded.

Тем не менее, вся инфраструктура по-умолчанию подбивает спавнить задачи. В коробке нет many-to-many каналов, пулы реализуются сторонними крейтами. Spawn - дешёвый, особенно асинхронный, это вам не питон. И пулы вроде и не нужны.

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

Обязательно случится:

- данные могут поступать быстрее, чем отрабатывать таймауты

- коннекшн взят из рукожопского крейта, где таймаут отрабатывает хреново

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

В результате - ловим на проде out of memory. И хорошо, если у вас микросервисы и сразу видно, какой раздулся. А если монолит - велком проебаться пару ночей с профайлерами.

А как нужно? Ну очевидно, что два варианта

- пул воркеров с каналом, который отдает задачу первому свободному. или

- spawn, но в пуле, который чётко лимитирует количество задач и, желательно, следит за таймаутами сам
👍22🔥2😁2💩1
Делали новый клауд для ембед-железок, которые продаем. С vpn, ssh и хитрыми API с TLS. Решили сделать по-богатому - на эллиптических кривых.

Опытным путем установлено, что в 2023 году проблем +/- нет только с тремя кривыми: secp224r1, secp384r1 и secp521r1, соответственно (все три рекомендуемые NIST).

Всё остальное - гроб, пиздец, кладбище и бесконечные срачи на форумах "opensource вам ничего не обязан".
😁19👍9
Ожидание: ChatGPT будут использовать для создания произведений искусства, сложных программ, научных исследований. Он заменит тысячи специалистов!

Реальность:
😁38🔥5👍4
- ваш емейл не может закачиваться на пробел
- не может, но я ввожу его с мобилы, это автокомплит. тримните его
- повторяем, ваш емейл не может заканчиваться на пробел

шёл 2023й год. формы до сих пор играли в бюрократию 90х. не делайте так, юзеры будут вас хейтить. не у всех же master of cs, чтобы догадаться, что вы хотите.
🔥28👍9
Чтобы избавиться от выгорания, возьмите себе падавана

падаван: мне надо доступ в postgres
я: забирай,
192.168.5.6:5432
падаван: не работает
я: почему не работает?
падаван: смотри сам:
httр://192.168.5.6:5432
выгорание: ну-ну
😁48🔥7👍1
Зрада отменяется. serde убрали precompiled binaries в 1.0.184

Но обещали вернуть, когда-нибудь потом.
👍13😁2
Вопрос разбирали, почему OpenLDAP до сих пор не победил Active Directory.

Оба набора программ имеют схожий функционал и позволяют играть в IAM. Но есть большая разница.

- Active Directory - это продукт, OpenLDAP - это набор "сделай сам"

- Для начала работы с AD нужно купить шиндовс-сервер и установить контроллер домена. Для начала работы с OpenLDAP нужно знать, что вообще такое LDAP

- Для OpenLDAP есть десяток гуёв, которые позволяют с ним работать мышкой. Для AD есть один гуй, который делает всё и админу не нужно выбирать между 10

- При всей моей нелюбви к PowerShell, администрирование AD из консоли - в целом логичный и простой процесс. Администрирование из консоли OpenLDAP - квест, даже для админов, которые десятками лет сидят в линуксе.

- OpenLDAP позволяет гибко вести базу идентичностей. У AD база в целом дубовая, но это опять же отлично - дядя подумал за тебя. Админ, который выучил AD в одной организации, без проблем админит его в другой. А не читает тонну внутренней документации (если она вообще есть).

Конкурентом AD был не OpenLDAP, а NDS. Что касается Novell - это хрестоматийная история, как купить за 200 миллионов готовый и довольно популярный дистрибутив, а затем угробить и себя, и его. В open source нельзя работать, просто поглощая друг друга за деньги. Если откопаете Sun - тоже подтвердит.
👍23😁1
2025/09/16 17:42:59
Back to Top
HTML Embed Code: