Обновить
1
0

Embedded Software Engineer

Отправить сообщение
Логическая ошибка — это поделить на два там, где нужно умножить, перепутать дату рождения с датой регистрации или еще что-то в этом духе. От этого компилятор действительно не может спасти.
Ошибки же управления ресурсами — это другое, и как показывает мой скромный опыт с Rust, тут компилятор способен очень на многое. Но понимать, что как работает, все равно нужно: компилятор выдает чаще ошибки вида «сходи-ка дружок поучи матчасть», чем «сделай как я говорю, и все заработает».
Про «ultimate portability» — интересно, спасибо. Надеюсь, у них получится.
Аналогии с макросами я не понял, честно говоря. Я вот о чем: для C сейчас существует множество компиляторов. С открытым кодом, с закрытым кодом, оптимизированные под конкретный процессор, со встроенным theorem-prover'ом, компилирующие в прошивку для FPGA и т.д. — полный зоопарк под любую бизнес-модель и область применения.
Все это стало возможным благодаря тому, что язык С стандартизирован, любой может взять стандарт и написать под него компилятор. С Rust же это невозможно в принципе, просто потому что стандарта нет и не планируется. По сути Rust = rustc, и это достаточно серьезное ограничение для языка, который хочет захватить мир.
Например огромный недостаток по сравнению с C — отсутствие стандарта. Пока что стандарта языка не только нет, он даже не планируется: постоянно подкачивать новые фичи языка с гитхаба — это модно, молодежно, динамично, но не годится для индустрии.
Еще есть проблема со стандартной библиотекой. Насколько я смог понять, там большие проблемы с модульностью. Если в С, например, я пишу под микроконтроллер, я могу использовать урезанную стандартную библиотеку без тредов хэш-мапов и всего такого, и все еще иметь возможность вызывать printf или memcpy. Даже нажористую плюсовую библиотеку, кажется (см. Christopher Kormanyos «Real-time C++») можно использовать на системах без динамической памяти подсовывая кастомные аллокаторы.
Растовая библиотека же работает по принципу «все или ничего». Или ты ограничен функциональностью core или же будь добр портируй std целиком: с динамической памятью, тредами и прочими радостями.
Частоты в старых настройках могли быть и конкретными: например, одна клавиша настраивалась под «стандартный» камертон, а остальные — от нее. Разница в том, что старые настройки основывались на чистых интервалах, которые человек с музыкальным слухом мог легко (ну, после некоторой тренировки) услышать самостоятельно и подстроить свой инструмент перед началом концерта.
Равномерная темперация основана на логарифмической шкале, из чистых интервалов — только октавы (ну, квинты и кварты тоже достаточно близки, но все же не совсем). Чтобы настроить инструмент равномерно, нужен человек со свехрординарным слухом, т.е. настройщик. На каждый концерт такого не позовешь, соответственно, нужно, чтобы инструмент держал строй достаточно долго.
Я полагаю, Иван имел в виду вполне конкретного руководителя 60+. Но предложение действительно дискриминационное и к тому же чисто паллиативное — если нормальной сменяемости власти нет, то такие трюки общество не спасут (а если есть, то они не нужны).
Зачем команде из двух-трех человек отдельный скрам-мастер?
«Порядок прилагательных» — это не правило, а просто забавное наблюдение. Как таковое, иногда работает, а иногда нет.
Речь о peer-review, насколько я понял.
Баг в документации — это другое. Бывает, что баг — это просто баг, а «апишка» — одна-единственная. В моей области (embedded Linux) — нормальная история.
Если цель — поколебать миф о настоящем программисте, то это не поможет. Даже если вдруг окажется, что большинство профессиональных программистов ни в какие сторонние проекты не коммитят, всегда можно сказать, что это обычные быдлокодеры, а не настоящие программисты.
Что мне кажется особенно удивительным в программистском сообществе — это то, что при том, что профессия, казалось бы, требует развитого логического мышления, большинство вопросов, относящихся к деятельности программиста, начиная от архитектуры программных систем и заканчивая оценкой профессиональной квалификации коллег, решаются на основании личных вкусов и anecdotal evidence. При таком подходе можно спорить о чем угодно без малейшей надежды прийти к согласию хоть до тех пор, пока роскомнадзор не закроет интернет.
Все же в такие тонкости, как наличие и качество сторонних проектов бизнес обычно не лезет, это скорее могут быть требования коллег/тимлида.
Мы все живем в условиях открытого рынка, к счастью. Нравится работодателю спрашивать про сторонние проекты или про вставку в красно-черное дерево или про то, почему люки круглые — значит он может найти соискателей под свои требования, и у него все хорошо. Если не сможет — разорится или сменит кадровую политику.
Какой-то у вас другой Берлин. Жил в иммигрантском районе (юг Веддинга), никакого культурного шока не испытал. Громкая музыка — это бывает, с немцами, впрочем, тоже.
Зачем тогда рок-звезда, если работа происходит в таких жестких рамках? Хватит и оутсорсера.
Конечно 100 центурионов круче 1000 берсерков, ведь каждый у каждого центуриона под командованием 100 легионеров.
Погодите, они еще блог на Хабре заведут.
Режимы — это удобно, да, но это скорее преимущество vim перед nano и emacs, а не перед IDE. В сравнении же с IDE для меня главное — это то, что не нужно выходить из командной строки. Сейчас у меня из графических приложений только браузер и просмотрщик pdf в отдельных виртуальных экранах, остальное все делается в терминале.
Она не могла развиваться нормально, потому что гонения означали вынужденный отрыв от трудов иностранных ученых (были и другие причины для этого отрыва, конечно, но тоже связанные с теми же, кто гнал кибернетику). Родили несколько самобытных поделий, которые, разумеется, быстро стали ни кому не нужны, и уже к 70-м было решено, что больше смысла имеет копировать международные образцы, чем пилить своё на тритах. А могли бы внести свой вклад в мировой CS.

Информация

В рейтинге
Не участвует
Откуда
Berlin, Berlin, Германия
Зарегистрирован
Активность