Воспоминания о языках программирования в авиации (и не только)

Вопрос был про качество кода в критически важных системах.
А какое отношение "качество кода" имеет к алгоритмически не решённой проблеме "полного автовождения"? Тут можно говорить разве что о качестве подбора коэффициентов в апроксиматоре.

На вкус и цвет фломастеры разные. Мне нравится код с большим количеством комментариев. Мне так удобнее и быстрее...
В критически важных системах подход "мне так удобнее и быстрее" не работает, разумеется.

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

Предварительное проектирование никто не отменял. Чем тщательнее и детальнее будет проведено предварительное проектирование, тем качественнее будет продукт на выходе...
Какое отношение это имеет к тому, помогают ли комментарии менять код?

Но кому это надо на сегодня? Лично я хочу качественное ПО, а не раздутое до невероятным масштабов нечто, что присутствует на рынке сегодня
Вы его хотите для чего, собственно? Просто чтобы было, или вам нужно решать какие-то задачи?

А вообще принцип Вирта был - чем меньше синтаксиса, тем более удобнее инструмент написания, хотя как указывает в интервью сам Вирт, удобство читабельности - вещь спорная,
кстати сама статья тут - Никлаус Вирт о культуре разработки ПО
Вопрос - что из того, что он сказал стало неактуальным сегодня?
Неактуальным для чего? Он, по сути, говорит об обучении студентов программированию. К созданию качественного ПО это имеет косвенное отношение.

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

На сегодня любая среда программирования, кроме специфических задач - это прежде всего набор дополнительных библиотек, в которых заложены все реализации для быстрого написания программ.
А мощность языка напрямую влияет на то, насколько функциональные и полезные библиотеки на нём можно создавать.
 
Реклама
[
Там написано Лифы выпуска 2020+. Т.е. более свежие, на старых таких проблем нет. Потому как они ещё сделаны по ДВС стандартам, а новые уже гаджеты на колёсах. ...

Лиф с 2017 одним поколением до н.вр идет.

Какие еще стандарты ДВС в кан-шине? Или вообще в топологии автомобиля? Или вообще в автомобилестроении? Есть развитие автопрома, которое требует автоматизации в пилотировании. И это вообще не важно, будет это электрический или жидкотопливный автомобиль.

Ты что-то вообще размышляешь шаблонными фразами типа "гаджеты на колесах" и свалился в какую-то бессознательную парадигму в ключе "когда х%й твердо стоит трава кажется зеленее".
 
Вот мы на днях заопенсорсили (с документацией):
Я пытался понять что это и как работает. Ну без понимания задачи это, наверное, нереально вообще.

Между тем, периодически сталкиваюсь с необходимость копаться в таком коде.

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


Это библиотека взаимодействия процессов через shared memory для posix-совместимой hard realtime операционки (в данном случае, QNX), ориентированная на задачи автономного вождения и поддерживающая стандартный интерфейс AUTOSAR на взаимодействие между компонентами.
 
Какие соображения по поводу W 11 и TPM2.0?
W 10 в октябре кончится, обещают.
Нужен ТРМ и все тут. Кому и зачем, не объясняют.
Например: Майкрософт одним обновлением 150 - Skype жестко заблокировала, меня не спросив.
НР утилитой "Принт энд скан доктор" выводит из строя принтера старше 10 лет. (цветные сами печатают примерно каждые 10 минут странные сообщения, а лазерные серую строку с микротекстом на правильном отпечатке (не на каждом)).
"Загрузите бесплатное официальное приложение HP Print Scan Doctor, чтобы автоматически устранять проблемы со сканером, такие как системные ошибки или любые..."
Так же одним движением, (обновлением) с помощью ТРМ может навсегда зашифровать диск?
Или опасения необоснованы?...
Дополнительно: Чипсет Х58 (ICH10) имеет разъем ТРМ, но в БИОС нет пункта меню его включить. Химичат буржуи.
В плане авиации оно оффтоп, но по мне, многих касается.
 
Например: Майкрософт одним обновлением 150 - Skype жестко заблокировала, меня не спросив.
Собственно, если сервера отключены, то и приложения и без "обновления" работать не будут.

Microsoft перевела всех пользователей Skype на MS Teams. Контакты - по крайней мере, у меня - сохранились. Да и сам MS Teams научился поддерживать несколько аккаунтов на одном устройстве, что выгодно отличает его от конкурентов.
 
Собственно, если сервера отключены, то и приложения и без "обновления" работать не будут.

Microsoft перевела всех пользователей Skype на MS Teams. Контакты - по крайней мере, у меня - сохранились. Да и сам MS Teams научился поддерживать несколько аккаунтов на одном устройстве, что выгодно отличает его от конкурентов.
Лирика:
меня всегда возмущало когда кто то диктовал, что мне читать, в каком возрасте, что слушать и т. д. (Это по поводу принудительного навязывания обновлений и программ МS).
Факты:
скайп сам по себе живой, но МS его жестоко блочит. Следовательно, есть причина. Скайп, мне лично, не шибко нужен, но как то неприятно.
Личное:
имею тяжелую и надежную, как дубовый гроб, рабочую станцию. При имитации полета, дополнительно включаются 4 вентилятора (отдельным тумблером). На W 11 официально не тянет по процессору (X5690) и по TPM2.0 (модуль установлен, но система его не видит). В раздумьях: покупать новую (НР Z4 G4) или придумывать, как обойтись, тем что есть.
 
Последнее редактирование:
Лирика:
меня всегда возмущало когда кто то диктовал, что мне читать, в каком возрасте, что слушать и т. д. (Это по поводу принудительного навязывания обновлений и программ МS).
Факты:
скайп сам по себе живой, но МS его жестоко блочит. Следовательно, есть причина. Скайп, мне лично, не шибко нужен, но как то неприятно.
История со скайпом и тим чисто коммерческая. МС выкупил скайп и запустил на его месте свой продукт. Причина чисто в деньгах.

Но вот интересна твоя позиция. Если ты хочешь лететь и оказывается, что на рейсках только боинги и аэрбасы. Возмущает ли тебя это факт? Может быть, ты хотел бы лететь на чем-то другом.

Удивительно, что многие люди стали всерьёз называть ограниченность коммерческого предложения навязыванием 🤣. Мне всегда казалось, что навязывание - это когда ты не можешь отказаться.
 
История со скайпом и тим чисто коммерческая. МС выкупил скайп и запустил на его месте свой продукт. Причина чисто в деньгах.

Но вот интересна твоя позиция. Если ты хочешь лететь и оказывается, что на рейсках только боинги и аэрбасы. Возмущает ли тебя это факт? Может быть, ты хотел бы лететь на чем-то другом.

Удивительно, что многие люди стали всерьёз называть ограниченность коммерческого предложения навязыванием 🤣. Мне всегда казалось, что навязывание - это когда ты не можешь отказаться.
Есть сомнение, что проблема в тотальном контроле. Примерно раз в месяц, у меня появляется сообщение в Ексель: возникла ошибка и несколько минут идет куда-то скачивание информации. Потом либо ексель продолжает работу, либо открывается файл, который был до изменений.
Может, конечно, и мнительность.
TPM2.0, это не навязывание? Кто бы виртуальный ТРМ придумал... Пока не нашел.
 
Есть сомнение, что проблема в тотальном контроле. Примерно раз в месяц, у меня появляется сообщение в Ексель: возникла ошибка и несколько минут идет куда-то скачивание информации. Потом либо ексель продолжает работу, либо открывается файл, который был до изменений.
Может, конечно, и мнительность.
TPM2.0, это не навязывание? Кто бы виртуальный ТРМ придумал... Пока не нашел.
Это нагрузочный тест компа нужно прогнать, и тест всей оперативной памяти сложными шаблонами. Этак на часик-другой.
"Работает но иногда что-то ломается" это чаще всего хитрый сбой во второй+ планке памяти.
Лучше раньше чем позже - оно незаметно данные портит при записи.
 
Реклама
Это нагрузочный тест компа нужно прогнать, и тест всей оперативной памяти сложными шаблонами. Этак на часик-другой.
"Работает но иногда что-то ломается" это чаще всего хитрый сбой во второй+ планке памяти.
Лучше раньше чем позже - оно незаметно данные портит при записи.
Windows 10 - остаток ресурса - 141 день.
Дефект с момента установки Офиса 2021 (LTSC). На одних и тех же таблицах.
Жить не мешает. Создает впечатление, что кто-то смотрит из за спины.
Дополнение: С удивлением обнаружил, что у меня советский компьютер, поразительно добротный, на морде бирки: GEG Prestige и DioNIS. Очень жалко такой в металлолом из за ТРМ.
Автоудаление.
 
Последнее редактирование:
Есть сомнение, что проблема в тотальном контроле. Примерно раз в месяц, у меня появляется сообщение в Ексель: возникла ошибка и несколько минут идет куда-то скачивание информации. Потом либо ексель продолжает работу, либо открывается файл, который был до изменений.
Может, конечно, и мнительность.
TPM2.0, это не навязывание? Кто бы виртуальный ТРМ придумал... Пока не нашел.
Ну, бывает, что программы при ошибках отправляют дамп памяти производителю. Обычно пользователь получает соответствующий вопрос при установке программы, что-то типа "не против ли Вы, если при ошибках в программе нам будет отправлен дамп памяти бла-бла-бла?.." Если Вы сказали да, то программа будет "звонить домой".
Если есть сомнения, то можно установить сниффер и посмотреть на сетевой траффик что, когда и куда отправляется.
 
Ну и, кстати, Teams может намного больше, чем Skype. Там и интеграция Офиса 360 с возможностью совместной одновременной обработки документов, и screen sharing, и возможность хранить файлы, и множество всяких плагинов, и возможность создавать разные группы и каналы с разделением доступа и т.д. и т.п. Т.е. это достаточно мощный корпоративный инструмент. При этом всякий, имеющий Microsoft account, т.е. в принципе всякий пользователь Windows может пользоваться Teams. Спрашивается: на кой ляд Майкрософту поддерживать ещё и Скайп?
 
Ну, бывает, что программы при ошибках отправляют дамп памяти производителю. Обычно пользователь получает соответствующий вопрос при установке программы, что-то типа "не против ли Вы, если при ошибках в программе нам будет отправлен дамп памяти бла-бла-бла?.." Если Вы сказали да, то программа будет "звонить домой".
Если есть сомнения, то можно установить сниффер и посмотреть на сетевой траффик что, когда и куда отправляется.
Спасибо! Редко. Ловить себе в убыток. Если запретить отправку, компьютер зависает, и продолжить работу можно только через диспетчер задач: снять задачу ексель. Сбой при установке даты, больше текущей. Лучше, пусть отправляет. Минуты две ждать.
Windows: По слухам, MS снял требование к обязательной установке TPM2.0.
Пока официально обновиться не дает:
"
Этот комьютер должен поддерживать безопасную загрузку.
Доверенный платформенный модуль ТРМ 2.0 должен поддерживаться и включаться на этом компьютере.
Доверенный платформенный модуль (ТРМ): Доверенный платформенный модуль не обнаружен.
Процессор сейчас не поддерживается для Windows 11.
Процессор: Intel Xeon CPU X5690 3.47GHz
"
Windwos 11 Enterprise, для 24Н2 эти требования сняты.
Вывод: будем подождать...
на кой ляд Майкрософту поддерживать ещё и Скайп?
Изначально Скайп не нуждался в поддержке. Во время раскрутки, присылали карточки с кодом примерно на доллар.
Поддерживать не надо, но зачем блочить? (я восстановил, они опять испортили, еще раз восстанавливать лень). По Teams у меня нет понятия, ни по технологии передачи (Р2Р ?, являются ли клиентские компьютеры, частью сервера? Участвуют ли в передаче чужого трафика?), ни по шифрованию. Пока все предложения по использованию Teams, выключаю.
Могу ли я через Теams передать католог деталей нового Джета, или меня посодят, как предателя?
MS контора мудрая, работящая, доброжелательная, но мутная (непрозрачная). (личное мнение).
Автоудаление.
 
Последнее редактирование:
А, извиняюсь, логиниться в Скайп вы как будете, если "поддерживать не надо '?
Не знаю. Но поначалу Скайп позиционировался, что ни у кого ни про кого нет полной информации. Все распределено с избыточностью на клиентских машинах.
Прикол от кофейника:
Есть две формально одинаковых функции .cpp, вычисляющих либо периметр (по умолчанию), либо площадь прямоугольника.
Во второй объявлен прототип функци. Первая работает с указанием только двух параметров, вторая - нет.
#include <iostream>
using calc_type = enum{ calc_perimetr , calc_square};
int get_rect_value(int width, int length, calc_type ct = calc_perimetr)
{
if (ct == calc_perimetr)
return width + length + width + length;
else
return width * length;
}
int main()
{
int width, length;
std::cin >> width >> length;
std::cout << get_rect_value(width, length) << std::endl;
return 0;
}
работает.

#include <iostream>
// using calc_type = enum{ calc_perimetr , calc_square};
int get_rect_value(int width, int length, calc_type ct = calc_perimetr);
int get_rect_value(int, int, calc_type);
int main()
{
int width, length;
std::cin >> width >> length;
std::cout << get_rect_value(width, length) << std::endl;
return 0;
}
// int get_rect_value(int width, int length, calc_type ct = calc_perimetr)
int get_rect_value(int width, int length, calc_type ct)
{
if (ct == calc_perimetr)
return width + length + width + length;
else
return width * length;
}
не работает.
Если в main
std::cout << get_rect_value(width, length) << std::endl;
заменить строкой:
std::cout << get_rect_value(width, length, calc_perimetr) << std::endl;
работают обе программы.
Автоудаление.
 
Последнее редактирование:
Не знаю. Но поначалу Скайп позиционировался, что ни у кого ни про кого нет полной информации. Все распределено с избыточностью на клиентских машинах.
Это кем это он так позиционировался?

Прикол от кофейника:
Есть две формально одинаковых функции .cpp, вычисляющих либо периметр (по умолчанию), либо площадь прямоугольника.
Во второй объявлен прототип функци. Первая работает с указанием только двух параметров, вторая - нет.
Что мешало в прототипе декларировать значение параметра по умолчанию?
 
Реклама
Это кем это он так позиционировался?
Если у Вас есть, что более предметное по скайпу, поделитесь, пожалуйста.
Что мешало в прототипе декларировать значение параметра по умолчанию?
Заморочка практического значения не имеет, но если у Вас есть желание поиграться, напишите, пожалуйста, измененную строку или строки.
 
Назад