Рубрика «Софт» - 10

Как портят софт ради обратной совместимости - 1


«Ожирение софта» — известная беда современной разработки. Повышение производительности железа зачастую воспринимается менеджерами как возможность игнорировать рефакторинг, всё равно никто не заметит тормозов. Проще докупить железа, чем тратить время на оптимизацию.

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

Когда люди с трудом выиграли соревнование с алгоритмом — оптимальный раскрой листа металла - 1

Берём 6 рулонов металла с предыдущего передела, разматываем в печи отжига, получаем стендовую партию из 6 рулонов электротехнической стали с почти одинаковой структурой. Нужно обрезать их до товарных рулонов.

Правила игры такие:

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

То есть мы можем обрезать сталь по краям, если дефект попался у кромки, и получить узкий рулон без изъянов. Или вырезать участок с дефектом и получить широкий рулон, но со швами.

Задача — оптимально разложить заказанные рулоны примерно по 3,5 тонны в стендовой партии из рулонов по 9 тонн длиной 4,5-5 километров. Перевалка станины на разную ширину стоит денег, и часто это дороже, чем вернуть 200-300 метров стали назад в переплавку.

То есть задача сводится к тому, чтобы за минимум шагов получить максимум полезного металла. Мы называли это «Каждый сам себе Пикассо», потому что каждый мастер резал в соответствии со своей личной и сугубо субъективной картиной мира. Нам казалось, что до оптимизации там ой, как далеко.

В обычной истории мы бы полгода «бодались», потом придумали бы интеграцию и робот стал бы говорить «человекам», как раскраивать. Но тут всё пошло несколько иначе и началось странное.
Читать полностью »

Какой русский не любит быстрой езды? И теории о том, что каждый успешный человек — это сын маминой подруги, получивший всё от богатых родителей. Ведь если наш условный Ваня Иванов, простой оборванец из глубинки, не выбился в люди — значит и другие не могли этого сделать никак, разве что родители помогли или еще какие родственнички. Особым почетом у нас пользуется живучая идея о том, что Билл Гейтс был не талантливым программистом и блестящим предпринимателем, а оказался… сыночкой-корзиночкой, которому мамка устроила сладкую жизнь в высшей лиге, перетерев за бокалом вина с одним из директоров IBM.

Читать полностью »

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

История

С 2009 года я участвую в комплексных исследовательских экспедициях, которые проводит фонд “Электронная энциклопедия истории и культуры русских сёл и деревень” в сотрудничестве со школой №1553 имени В.И. Вернадского.

За многие годы поездок у нас сформировался такой порядок работы: Читать полностью »

ОС ToaruOS, написанная с нуля, взрослеет: на что способна экспериментальная операционная система год спустя - 1

Чуть меньше года назад мы опубликовали статью об операционной системе ToaruOS, которая выросла из студенческого проекта. Несмотря на то, что команда этого проекта не очень большая, система продолжает развиваться, и сейчас ее действительно можно назвать «взрослой». Разработчики выпустили версию 2.1, добавив новые возможности.

Сама система уже далеко не студенческий проект, а полноценная ОС с гибридной модульной архитектурой, в которой сочетаются как средства для использования загружаемых модулей, так и монолитная основа. При этом разработчики обеспечили поддержку большинства популярных устройств. Ну а о подробностях поговорим под катом.
Читать полностью »

Microsoft планирует активно развивать ARM-направление. Как и почему корпорация собирается это делать? - 1

Сегодня на Хабре публиковалась интересная новость о том, что корпорация Microsoft отгрузила и уже начала продажи устройства, которое называется Windows Dev Kit 2023. Предназначен этот девайс за $599 для разработки приложений на платформе ARM. Базируется система на Qualcomm Snapdragon 8cx Gen 3, с SSD на 512 ГБ и 32 ГБ ОЗУ. Неплохо, но зачем Microsoft разработала этот неттоп и почему собирается массово (насколько это возможно, конечно) его распространять? Давайте попробуем разобраться. Делать это мы будем под катом.
Читать полностью »

Статья Хилла Уейна, автора почтовой рассылки «Компьютерные штучки», которая посвящена формальным методам и применению математики в программировании, истории и культуре программного обеспечения, философии и теории программирования, а также всяким экзотическим штукам и нишевым темам. В общем, рекомендуем.

В прошлом выпуске рассылки Уейн игрался с языком программирования J, который работает как арифметический калькулятор в консоли, и пошутил по ходу дела:

Я столько времени трачу на интерактивные вычисления, что даже не мог оторваться от этих функций… Может, мне просто хорошенько освоить Excel?

Пошутив про офисную программу, Хилл Уейн решил действительно посмотреть на неё поближе… и был поражён увиденным: «Это как найти сундук с сокровищами у себя на чердаке», — пишет он. И перечисляет некоторые новые функции современного Excel, о которых мало кто знает.
Читать полностью »

Удалённый доступ к Linux-десктопу. Лучшие RDP-серверы и клиенты 2022 года - 1


Что делать, если нужно получить удалённый доступ к серверу или десктопу Linux? Или подключиться к Windows-машине с Linux-десктопа? Какие клиенты RDP и FTP подходят лучше всего под Debian и Red Hat / CentOS? Интересно посмотреть, что нового появилось в последнее время.
Читать полностью »

Ежедневно IT-компании заключают множество контрактов, договоров или соглашений. Если с товарами и услугами всё прозрачно и понятно даже рядовому сотруднику, то с передачей прав даже у матёрых юристов и бухгалтеров случаются промахи. Я встречал немало Сублицензионных соглашений о передаче прав на программное обеспечение, которые содержали недоразумения, касающиеся исключительно определения ролей сторон — участников договора. В классических договорах поставки мы встречаем такие роли: для принимающей стороны — это в основном Заказчик или Покупатель, а для передающей стороны — это ИсполнительЧитать полностью »

Предположим, перед разработчиком поставлен такой вопрос — как со стороны веб-сайта определить, что у пользователя установлено конкретное приложение? Вопрос интересный. На него есть несколько способов ответа. Как вам такой вариант — поставить в систему уникальный шрифт при инсталляции программы? Ведь браузер всегда отдаёт по запросу список системных шрифтов. Значит, проблема решена.

Так делают различные программы, хотя это не назовёшь образцом правильного программирования. У метода свои преимущества и недостатки.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js