Качественная обработка ошибок — это ключ к созданию надёжных программ; но программистов она часто пугает, ведь всегда найдётся ещё один пограничный случай. В традиционных объектно-ориентированных языках программирования используются специальные классы исключений, которые можно выбрасывать, чтобы прекратить обычный поток управления и немедленно сообщить об ошибке. Давайте рассмотрим пример, в котором применено защищённое от ошибок целочисленное деление: int safeDiv(int a, int b) { if (b =…
Сегодня — экстремальный geek out: максимально узкоспециальная тема с запутанным кодом на ассемблере Z80. Раскроем секреты Тима Фоллина в «биперной» музыке на Sinclair ZX Spectrum 48K, попытаемся повторить, а может быть и превзойти его достижения. Некогда объяснять, разберёмся по ходу кода! ▍ Контекст Есть такой популярный британский домашний компьютер 1982 года выпуска — Sinclair ZX Spectrum. Его аппаратные клоны и игры были очень популярны в странах бывшего СССР и других развивающихся страна…
Моя последняя публикация на Хабре вышла довольно давно, так что скажу ещё раз, что я работаю в Политехническом музее и отвечаю в нём за научную достоверность. У моей должности есть конкретное название, но оно слишком длинное и к тому же регулярно меняется. Основная сфера моих интересов — история вычислительной техники и отбеливание пластмассы. Музей, как вы наверняка знаете, всё ещё находится на реконструкции, но работу свою не останавливает. Даже будучи закрытым, он продолжает пополнять св…
Все началось с того, что я забыла ключ от ворот во двор и вспомнила свою прошлогоднюю идею сделать что-то, похожее на Флиппер, но компактнее, дабы всегда носить с собой. В прошлом году до реализации не дошли руки, а вот в этот раз - дошли.Приглашаю под кат, чтобы посмотреть, что получилось и обсудить, как можно сделать лучше :)Flipper ZeroFlipper Zero — портативное многофункциональное Тамагочи-подобное устройство, разработанное для взаимодействия с системами контроля доступа и другими системами…
Несколько дней назад одна неназванная организация произвела дистанционный подрыв тысяч пейджеров "Хезболлы". Если оставить в стороне моральные аспекты этой операции, на мой взгляд, то, что произошло, может принести большие проблемы гражданской авиации по всему миру. Ливан, конечно, бедная страна, но это не КНДР, и люди туда и оттуда вполне себе летают. Работает аэропорт Бейрута, принимает десятки рейсов в день. То есть есть весьма ненулевые шансы, что на борту самолетов вылетающих из аэ…
ПредисловиеКак известно, в России почти каждая первая финансовая организация позиционирует себя как софтверную IT-компанию, а не просто как "банк" или "платежная система". Сегодня речь пойдет о ЮМани — подразделении Сбера, IT-гиганта всея руси. До того, как ЮМани стал тем, чем он сейчас является, сервис долгое время существовал как продукт Яндекса под названием Яндекс.Деньги — в те времена у меня был очень приятный опыт взаимодействия с техническим руководством компании, я неодн…
В книге Якова Перельмана «Занимательная физика» было описание наблюдения ландшафта через стереотрубу: «Трудно описать ощущения, которые испытываешь, когда смотришь в подобные инструменты, — до того они необычайны! Вся природа преображается. Далёкие горы становятся рельефными, деревья, скалы, здания, корабли на море — всё круглится, всё выпукло, расставлено на бесконечном просторе, а не лежит на плоском экране. Вы непосредственно видите, как движется далёкое судно, которое в обыкновенные трубы…
ПредисловиеКак известно, в России почти каждая первая финансовая организация позиционирует себя как софтверную IT-компанию, а не просто как "банк" или "платежная система". Сегодня речь пойдет о ЮМани — подразделении Сбера, IT-гиганта всея руси. До того, как ЮМани стал тем, чем он сейчас является, сервис долгое время существовал как продукт Яндекса под названием Яндекс.Деньги — в те времена у меня был очень приятный опыт взаимодействия с техническим руководством компании, я неодн…
Привет, Хабр! Это Антон Комаров из МТС Диджитал. Сегодня снова немного ностальгии — поговорим о Desktop2.Представьте, что на дворе середина 90-х. Вы щелкаете переключателем питания на своем ПК с процессором Intel 486DX2. Раздается жужжание шпинделя жесткого диска, дисковод весело подхрюкивает шаговым двигателем, а на дисплее появляется его величество MS-DOS. Просто черный экран и строка, куда можно вводить команды. Понятное дело, что на этом далеко не уедешь, поэтому у многих пользователей стоя…