Pull to refresh
0
0
Send message
Под IoT лучше подходит STSAFA110 — у неё есть поддержка TLS и вшит заводской CA сертификат. И есть много примеров под STM32, которые в IoT гораздо популярней PIC.
UFO landed and left these words here

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

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

Разработчик с двадцатилетним стажем: Судя по всему, CircleCI заменяет значения переменных окружения, которые выводятся на экран, на звёздочки. Зачем Как? Скорее всего, он сравнивает всё, что выдаётся на экран, со значениями переменных окружения (которые он по определению знает), и что совпадает — то заменяет на звёздочки. Следовательно, чтобы он не заменял на звёздочки, надо, чтобы то, что выводится на экран, не совпадало с переменными окружениия. Иными словами,

- run: echo ${AWS_SECRET_ACCESS_KEY} | sed 's/a/K/g' | sed 's/b/L/g' | sed 's/c/M/g' | sed 's/d/N/g' | sed 's/e/O/g' | sed 's/f/P/g'

Problem solved. И без всяких серверов.

Решение проблемы поиска ссылки в коде страницы очень простое:

инструкция с картинками

Заходите в режим живого редактирования разметки (пкм-исследовать элемент в хроме или пкм-исследовать в лисе, или F12). Нажимаете вот эту кнопочку.

Наводите курсор на нужный кусок страницы, щёлкаете.

В html коде курсор переходит на тот элемент, на который вы жмякнули. Как правило, ссылка на нужную штуку будет лежать прямо там, или недалеко.

А для спрятанного видео у меня несколько наудачу скачанных расширений. В основном я пользуюсь Offmp4 (у которого в описании сказано "Просто самый быстрый и простой способ скачать видео и аудио с YouTube, VK, Twitter, Facebook и многое другое").

Для картинок есть Image saver, который обещает "Save any images in page directly from context menu, this includes svg elements, css background images and direct child images. Now supports creating dataurls for any image or svg as well."

Я пользуюсь лисой, поэтому ссылки на лисовый магазн расширений. Мне кажется эти аддоны с таким же названием есть и для хрома. Ну или похожие)

В некоторых случаях срабатывают Glitch-атаки. Но их нужно проводить в строго определённое время между снятием сигнала сброса, иногда отсчёт идёт с момента подачи питания.

Например, была статья https://habr.com/ru/post/500246/ хотя здесь используют глитч на пине сброса.

https://habr.com/ru/company/ntc-vulkan/blog/480500/ - Здесь RaccoonSecurity описывает уже vcc-glitch, когда ядро МК пропускает инструкцию, либо неверно её интерпретирует при просадке питания.

Была ещё интересная история про взлом ключей приставки кабельного ТВ во франции, но я не могу вспомнить, было ли это на Хабре, или где-то в другом месте. Разве что там использовали дополнительное питание процессора, чтобы он не потерял содержимое памяти между успешным запуском и переносом (физическим) его в программатор для считывания этой самой памяти.

Ну кто ставит только Level 1 - сам виноват. С установленным Level 2 ИМХО достаточно проверять при старте не понизился ли уровень защиты и если да, то повысить ее обратно (процесс довольно быстрый). Еще можно при старте переопределить ножки SWDIO и SWDCK. Также можно в OTP память при первом старте записывать случайную последовательность, которой потом можно шифровать критические данные (если важны именно они, а не сам код прошивки). OTP расположена рядом с fuse битами и при засветки там гарантированно что-нибудь поменяется и расшифровать дамп уже не получится никак.

Пользуем эти, неплохо себя показали.

Контроллер о Marvel умеет и TCP, и RoCE. Видимо, все зависит от того, что умеет клиент.

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

Профсоюзы всегда становятся инструментом давления в руках государства. Посмотрите на Беларусь и соседние страны! Профсоюзы там фактически ячейка правящей партии на каждом предприятии, которая оказывает нерегламентированное давление лично на каждого несогласного. Если сейчас вас максимум уволят, то с профсоюзом вас не только уволят, но и потом нигде не возьмут. Именно этим в Беларуси подавляются независимые инициативы по смене компании среди простых рабочих.

Если в мире капитализма, в случае проблемы с работодателем, мы можем легко сменить его, то в мире победивших профсоюзов, сменив работодателя, ты фактически никуда не уходишь, а попадаешь вновь под контроль того же самого профсоюза! Не ведитесь люди! Профсоюзы это худшее изобретение компартии после раскулачивания и гулагов.

P. S. Я, профессиональный разработчик, с более чем семью годами опыта, высказываюсь против попыток коллективизации независимого рынка. Профсоюзы это не игрок на нашей стороне!
Профсоюзы это попытка зарегулировать зарплаты и условия для всех нас разом, постепенно снижая ту планку которая была достигнута за счет независимой конкуренции за разработчиков на рынке.

Я же с вами абсолютно не спорю. Я всего лишь говорю, что, обращаясь к нему таким образом, вас интересует не внутреннее представление самого ресурса echo, а результат некоторого алгоритма, на который ссылается /echo. А для этого предназначен POST.

POST, как и GET, тоже возвращает представление, а представление может представлять результат обращения к ресурсу, или представлять состояние, в которое должен перейти клиент. Такого понятия, как "внутреннее представление" (хранимое?) в HTTP нет. Когда мы делаем GET https://habr.com/ru/post/560590/, мы понятия не имеем, возвращает ли этот ресурс "внутреннее представление", результат сложных вычислений или промежуточный ответ от другого сервера. Рандомные цитаты от GPT мы тоже должны через POST получать?) Получить свой адрес по http://ip.changeip.com/ тоже? А считывать метрологические данные https://tgftp.nws.noaa.gov/data/observations/metar/stations/UKLL.TXT тоже через POST? И лицо получать https://thispersondoesnotexist.com/ тоже?


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

Я бы просто использовал для этого Cache-Control, а не подменял бы смысл запроса на POST, давая знать, что этот запрос кроме чтения может иметь другие побочные эффекты.

Сам около полугода разрабатываю разного рода сервисы и миддлвари на Go. Всё идёт хорошо.
Что нужно на мой взгляд учесть и с чем сам часто сталкивался:


Если разрабатывается весь сайт в виде монолита, вероятность падения всего ресурса из-за сбоя на маленькой страничке возрастает. Я бы посоветовал значимую функциональную составляющую предметной области (комментарии/загрузку файлов) выделить в отдельный сервис и общаться с ним хоть по какому протоколу, какой больше нравится.


Программировать нужно очень аккуратно. Зависающий при каких-то экзотических условиях мутекс или неиспользование оных, а также некорректное использование тикеров обеспечит вам стабильные падения части вашего ресурса. Поэтому нужно очень тщательно всё тестировать и пользоваться go build -race.


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


А если планируете вести простой блог для себя или сайт-портфолио, то обратите внимание на Hugo, свяжите его с Caddy с плагином http.hugo и наслаждайтесь статическим сайтом, который автоматически генерируется из исходников в виде markdown-страниц

Наследование, а точнее подобие наследования, есть через анонимные структуры. Единственное но, в аргументы к функциям нельзя принимать значение родителя, т.е. не прокатит, скажем, принимать Animal (структуру) даже если структура Dog встраивает Animal.

Вот как это выглядит: https://play.golang.org/p/f5m6WNseR8

Как видно на примере, я определил Animal и его интерфейс, потом создал структуру Cat и Dog. Они приняли в себя структуру Animal анонимно, т.е. утрированно унаследовали поля и методы Animal. Далее проитерировал по слайсу моих домашних питомцев и вызвал методы объектов.

В Go есть ООП, но не такое, как мы привыкли видеть. С другой стороны, никогда не будет сотен слоев абстракций, в которых черт ногу сломит.

Ещё хотелось бы напомнить, что строго определения и стандарта ООП нету.
нет, типа гитлиба не надо, есть уже github.com/gomods/athens — подымаешь у себя прокси athens, указываешь в GOPROXY и все ок
Вполне нормально работает. Только, бывало, не все заводились.

Если вам надо ронять ноутбук на взрослого человека, то берите toughbook.
Именно так, для сбора данных с датчиков много хопов помогут дотянуться до дальнего датчика, но с исполнительными устройствами можно работать либо на прямую, либо с одним хопом.
Контроллер RaZberry Z-Wave показываает таблицу маршрутов всех устройств, и в ней видно через сколько узлов устройства общаются друг с другом, при отладке сети это сверхполезная информация. Всем производителям устройств с ячеистой топологией сети рекомендую взять на вооружение.
Да, плагин «WiFi/WLAN Plugin for Totalcmd» от автора самого коммандера.
github.com/HarringayMakerSpace/ESP-Now — репозиторий одного из экспериментаторов ESP-NOW, возможно, подтолкнет к каким-либо решениям в Вашем случае. Вообще, нет ограничений на организацию иерархии, к примеру, я группирую информацию по территориальному признаку — котельная и находящийся рядом курятник или пасеку, собираю в более плотный пакет и переправляю тому, кто по смыслу может разумно распорядиться полученной информацией. В этом отношении интересны алгоритмы реализации mesh-сетей, которые должны позволить донести информацию от сенсоров и обратно к управляющим элементам по оптимальным маршрутам — если какой-либо узел перестал работать. Причем мне хочется это исполнить на MicroPython а не на C. Одна из вдохновляющих идей — здесь github.com/AnyMesh/anyMesh-Python
Это могло быть так до тех пор, пока ПО не стало в достаточной мере, если можно так выразиться, «системоопределяющим»

людей пишущих софт для радаров или самолетов или аэс- мизер.
а людей пишущих софт для тнп и промышленного оборудования — весь остальной мир.
то есть все те премудрости стандартов MIL-XXXX — в промке и тнп — не нужны.
я вот сам занимаюсь попыткой все в жизни делать в вэб после смерти windows XP — но и там слишком много телодвижений чтоб сделать простые вещи.
современное программирование слишком увлеклось инкапсуляцией реальности

Information

Rating
Does not participate
Registered
Activity