Код может пройти всю верификацию и всё равно не попасть в чип
Задача архитектора — подчеркнуть важное, всё остальное разрешается сделать на свой вкус
Советская школа умела жить в ограничениях — но потом сменился техпроцесс, и прибор упал
Ведущий технический менеджер продуктов YADRO рассказывает, как он превращает задачи заказчиков в требования к СХД
Что на самом деле происходит внутри компьютера, когда вы запускаете программу? За привычным интерфейсом скрывается слаженная работа процессора и оперативной памяти, где у каждого компонента своя задача.
Процессор не просто выполняет команды: его блоки управляют вычислениями, а быстрые регистры помогают оперативно работать с данными. Как всё это устроено и каким образом компьютер превращает код в действия?
Смотрите полное видео и читайте статью «Про первый персональный компьютер от IBM»: https://clck.ru/3W6NDP
Что связывает физические компоненты компьютера с программами, которыми мы пользуемся каждый день? Между «железом» и привычными приложениями скрывается целый мир системного программного обеспечения.
Именно оно помогает устройствам работать, а приложениям — взаимодействовать с аппаратной частью. Но что конкретно входит в системное ПО и почему без него современный компьютер просто не смог бы работать так, как мы привыкли?
Смотрите полное видео и читайте статью «Про первый персональный компьютер от IBM»: https://clck.ru/3W6NDP
Что заставляет процессор работать так быстро? Дело не только в частоте! Важную роль играет то, насколько быстро он получает доступ к нужным данным и инструкциям.
Регистры, кэш и специальные указатели помогают процессору работать с информацией эффективнее. Но как устроена эта система и почему даже расположение ячеек памяти имеет значение?
Смотрите полное видео, чтобы разобраться в устройстве процессора, и читайте статью «Про первый персональный компьютер от IBM»: https://clck.ru/3W6NDP
Пока одни языки программирования уходят в прошлое, C продолжает управлять устройствами, от которых зависит наша повседневная жизнь. Почему?
От операционных систем до низкоуровневого ПО — язык C остаётся важным инструментом инженеров. В чём его секрет и почему он до сих пор востребован, несмотря на появление множества современных языков?
Смотрите полную лекцию о системном программировании и читайте статьи:
Про первый персональный компьютер от IBM – https://clck.ru/3W6NDP
Что такое системное программирование – https://clck.ru/3W6NTc
Как развивались ASIC, какую роль в этом процессе сыграли FPGA и каким может быть «железо» будущего – https://clck.ru/3W6N59
Думаете, программирование — это только приложения, сайты и игры? Даже стиральная машина — полноценная система с собственной логикой!
Программное обеспечение управляет режимами стирки, сигналами и работой отдельных компонентов устройства. Такие решения называют встраиваемыми системами — и они окружают нас повсюду. Как устроена эта невидимая сторона привычных вещей?
Смотрите полную лекцию о системном программировании и читайте статьи:
Про первый персональный компьютер от IBM – https://clck.ru/3W6NDP
Что такое системное программирование – https://clck.ru/3W6NTc
Как развивались ASIC, какую роль в этом процессе сыграли FPGA и каким может быть «железо» будущего – https://clck.ru/3W6N59
Что происходит с кодом после большого рефакторинга?
Из сложных и практически неподъёмных методов получились конструкции примерно по 15 строк. Код стал понятнее, структурированнее и главное — снова доступен для изменений.
А сложность никуда не исчезла. Она просто стала управляемой.
Когда перед тобой десятки обработчиков, разорванная архитектура и бизнес-логика, которую нельзя потерять, задача превращается не просто в рефакторинг, а в настоящее расследование.
Как понять старый код и при этом не сломать то, что годами в нём работало?
Можно ли уменьшить количество кода без потери функциональности?
В этом случае избавились от boilerplate, сделали единый генератор и перестали дублировать код для разных методов и сервисов.
Результат: было много сложного кода — стало почти в 3 раза меньше.
Когда-то он хотел изменить мир. А потом посмотрел в резюме и обнаружил, что главным достижением снова оказался рефакторинг.
Почему программист в итоге меняет не мир, а код — и как получилось, что рефакторинг стал его главным профессиональным навыком?
Как работать с 200 ГБ кода, если на самом деле его нет на вашей машине?
В таком подходе локально хранятся только нужные файлы, а остальное подгружается с сервера по мере необходимости. И это полностью меняет картину с точки зрения производительности и I/O.
Разбираемся, что на самом деле происходит с «локальным» репозиторием.
А что, если ключ к сложной инженерной задаче — знания вовсе не из вашей специализации?
Иногда прорывное решение появляется на стыке разных областей. Опыт из прошлых проектов, любопытство и умение видеть задачу шире помогают находить выход там, где узкой экспертизы может оказаться недостаточно.
Смотрите полное видео подкаста «Интервью с инженером» с Андреем Овчинниковым и читайте статью «Что такое системное программирование?» на «Истовом»: https://clck.ru/3WBtVp
Чем сложнее решение, тем лучше? Инженеры знают: это не всегда так!
Иногда настоящий профессионализм — не в том, чтобы построить сложную систему, а в том, чтобы убрать всё лишнее и оставить решение, которое работает, понятно устроено и легко воспроизводится. Почему стремление к простоте может стать главным инженерным принципом?
Смотрите полное видео подкаста «Интервью с инженером» с Андреем Овчинниковым и читайте статью «Что такое системное программирование?» на «Истовом»: https://clck.ru/3WBtVp
Думаете, инженер просто следует инструкциям и формулам? На самом деле ему постоянно приходится придумывать новое!
Когда меняются условия, не хватает ресурсов или привычные решения перестают работать, на помощь приходят креативность, широкий кругозор и опыт из самых неожиданных ситуаций. Почему любопытство может стать одним из главных профессиональных инструментов инженера?
Смотрите полное видео подкаста «Интервью с инженером» с Андреем Овчинниковым и читайте статью «Что такое системное программирование?» на «Истовом»: https://clck.ru/3WBtVp
Системные программисты участвуют в создании будущих процессоров и проверяют их работу ещё на этапе проектирования. Как это устроено и почему без таких инженеров сложно представить разработку современных технологий?
Смотрите полное видео подкаста «Интервью с инженером» с Андреем Овчинниковым и читайте статью «Что такое системное программирование?» на «Истовом»: https://clck.ru/3WBtVp
Системный программист участвует в разработке процессора ещё до того, как тот появится в виде готового устройства. Его задача — заранее проверить работу будущего «железа», найти возможные проблемы и помочь сделать процессор надёжнее.
Как устроена эта работа и почему системный программист — больше, чем просто разработчик кода?
Смотрите полное видео подкаста «Интервью с инженером» с Андреем Овчинниковым и читайте статью «Что такое системное программирование?» на «Истовом»: https://clck.ru/3WBtVp
Дело не только в драйверах! Архитектура процессора и поддержка оборудования влияют на то, как операционная система взаимодействует с «железом». Системный программист Андрей Овчинников объясняет, почему не всё работает по принципу «подключил — и готово».
Смотрите полное видео подкаста «Интервью с инженером» и читайте статью «Что такое системное программирование?» на «Истовом»: https://clck.ru/3WBtVp
