новое    архив    фото    Харьковские сети    login   


дата   15-09-2009 00:01:27



Вообще говоря, то, под какой лицензией распространяются исходные коды неких сложных программных систем, не имеет прямого отношения к надёжности и безопасности этих программных систем. Во-первых, надёжность и безопасность определяется вовсе не по лицензии кода. Во-вторых, исходный код якобы “закрытых” систем (типа Windows) вполне себе доступен для тех, кому действительно нужно (правда, “лицензия” для доступа нужна иная). В-третьих, операционные системы, служащие для использования на действительно “важных участках”, обычно распространяются вместе с исходным кодом (потому что сертификация подразумевает его исследование). Можно ещё заметить, что в тех случаях, когда в обработке важной информации используется “закрытое” офисное ПО, для обеспечения надёжности и, скажем, секретности могут быть использованы другие методы, вне операционной системы. То есть главное, что специалисты осведомлены об уровне защищённости и “исследованности” данного ПО. И ещё: критически важны не “лицензии”, не “идеология открытости”, а стандарты разработки программного кода и соблюдение всех процедур подготовки программной системы. Справедливость этого очередной раз доказала нашумевшая ошибка в OpenSSL. Вот. А проблема “опенсорс-сообщества”, по-моему, в том, что в него входит значительное число участников, считающих себя эдакими “спасителями человечества” – они “спасают” его от “корпораций” и т.п. Понятно, что когда очередная ошибка или накладка в разработке показывает, что никакой исключительности в “открытом коде” нет, а это всего лишь один из способов распространения и разработки ПО, “спасители-спасатели” тут же “поднимают бучу”, ощущая, как несостоявшееся мессианство уплывает из-под ног. Интересно, что при этом “буча” всегда состоит из повторения одних и тех же мантр и ругани (”холиварсы”). А хорошие продукты у сообщества вполне получаются (тот же WordPress, например; или Joomla!, Drupal – отличные продукты). Другое дело, что те, кто хорошее реально создаёт, в бучах, думаю, штампованными мантрами не ругаются

добавить отзыв

дата   15-09-2009 00:07:38



Многие с нетерпением ждут, когда же появятся в большом количестве пассажирские сверхзвуковые или даже гиперзвуковые лайнеры, которые сократят время в пути. Между тем, ждать подобных лайнеров не нужно – в ближайшей перспективе их не будет. Дело в том, что сейчас авиаперевозчиков интересует увеличение числа потенциальных пассажиров. Перевозчиков заботит собственная прибыль. А “на круг” можно гораздо больше заработать, перевозя 100 пассажиров по условной цене билета в 300 рублей (но десять часов в полёте), чем перевозя одного пассажира по 3000 рублей (но три часа лететь). Понятно, что тех, кто готов летать по 300 – очень много, это основа массовых перевозок. Чтобы летали многие пассажиры и летали они много – нужно прежде всего решать две задачи: во-первых, повышение доступности плётов, а для этого лайнеры должны быть экономичными (в пересчёте на перевозку одного пассажира); во-вторых – повышение надёжности и безопасности: растёт интенсивность перевозок, а каждая катастрофа – отпугивает потенциальных покупателей билетов, поэтому лайнеры должны быть ещё более надежными (это, вообще говоря, очень сложная задача, так как современные лайнеры и так являются супернадёжными машинами) и сама организация полётов должна быть безопасной (а человеческий фактор – это тоже деньги и расходы). Собственно, эти две задачи – дешевизна и надёжность – сейчас и решают. А дальнейшее увеличение скорости полёта не так уж и важно: на большинстве линий время в полёте более или менее устраивает тех, кто хочет билет подешевле. Сверхзвуковые лайнеры тут неотвратимо и сильно проигрывают по обоим направлениям: это дорогие машины (обязательно больше топлива, другие технологии и тп.) и это машины ненадёжные (не отработана конструкция, другие нагрузки на агрегаты и тд.) Вот и выходит, что сверхзвуковые пассажирские лайнеры появятся, конечно, но это прежде всего будут “бизнес-самолёты”, перевозящие несколько пассажиров за очень большие деньги (ну, возят тех, кому реально нужно быстро – таких мало).

добавить отзыв

дата   15-09-2009 00:40:32



Вот, на примере космического аппарата MESSENGER (почему на его примере – будет понятно в конце заметки), хочу поделиться таким наблюдением из мира разработки программного обеспечения. Точнее, там есть два мира. Первый – очень известен, с ним соприкасаются очень многие (в основном, на правах пользователей). Этот первый мир – разработка “офисного” ПО. “Офисное” – конечно, условное название. Тем не менее, большая часть этого ПО используется именно в офисной работе. Это ПО работает на настольных компьютерах, серверах. К этому же миру относится и типичное современное web-программирование. Здесь в ходу такие “типы” ПО: текстовый процессор, редактор изображений, бухгалтерская программа и др. И известны такие “характеристические” понятия: Windows, Visual Basic, Delphi и т.п. Хорошо известно, что в мире “офисного” ПО можно смело выдать на рынок недоделанный, не отлаженный продукт с кучей ошибок (потому что главное – регулярно и быстро выпускать новую версию, опережая конкурентов; особенно рельефно эта тенденция видна в современных web-сервисах, которые теперь уже публикуют в неработающем виде, заявив, что это альфа-версия, ну или “бета” – особенной разницы на практике нет). Массовый клиент, понятно, уже приучен к ошибкам в программах и к тому, что нет никаких гарантий работоспособности. Это давно известная тенденция. Вторая тенденция вот в чём: в связи с тем, что комплектующие для офисного (и, конечно, серверного) компьютерного оборудования всё дешевеют и дешевеют (в пересчёте на вычислительную мощность), то разработчики из “офисного” мира готовы напрочь забыть об оптимизации и алгоритмов, и кода. Эти разработчики говорят так: “Лучше взять побольше железа – это выйдет дешевле, чем год возиться с оптимизацией”, “Пока вы оптимизируете ваш код, память подешевеет ещё в два раза” и тому подобные вещи. И разработчики тут, в общем-то, правы. Допустим, стоит задача вывалить хоть как-то работающий новый поисковик (условно) уже через месяц. Конечно, лучше купить два дополнительных сервера в систему, на которой поисковик будет работать, чем рисковать усложнением кода и тем, что квалификации имеющихся программистов (это вообще отдельная история про “логарифмическую сложность”) просто не хватит на то, чтобы реализовать оптимальный алгоритм в коде. Это свой мир. Со своими ценностями. А есть второй – совершенно другой: разработка специального ПО для встроенных систем. Здесь не только в ходу неизвестные в “офисном” мире понятия из теории сложности, но и совсем другие представления о надёжности. Потому что ошибка в “текстовом процессоре” грозит лишь секретарше (да и угроза лишь в том, что придётся набирать полэкрана текста заново). Ошибка в ПО управления спутником связи грозит многомиллионными убытками, а иногда – реальной катастрофой. Хуже того, в случае со спутником – его разработчикам придётся отвечать. (Понятно, что в “офисном” случае всякая ответственность с разработчиков заранее “списана” условиями лицензирования.) Другой важный момент, отличающий мир разработки встроенного ПО, в том, что здесь вычислительные ресурсы всегда существенно ограничены и алгоритмы и программный код приходится оптимизировать. В мире встроенного ПО совсем не работают методы типа “за год память подешевеет вдвое”. Почему? Вот тут-то мы и приходим к примеру с космическим аппаратом MESSENGER. Внимание, пример: MESSENGER стартовал летом 2004-го года. На орбиту вокруг Меркурия аппарат должен встать весной 2011-го года. Понятно, что как бы ни подешевели за это время на Земле компьютерная память и процессоры – “проапгрейдить” аппарат в районе Меркурия вряд ли получится. А вот загрузить на борт новое ПО – можно, с Земли. При этом, если, скажем, удалось “ужать”, в смысле того или иного используемого ресурса, программную реализацию какой-то функции на борту аппарата, то освободившиеся ресурсы можно использовать для решения новых задач, расширив функциональность аппарата. То есть грамотная и интенсивная оптимизация приносит прямые выгоды. Про надёжность программного кода и отсутствие в нём ошибок, думаю, можно не повторяться. Кстати, в мире встроенного ПО, на “борту изделий”, Windows совсем не в ходу, как ни странно. Там свои операционные системы. Так вот, к чему это длинное наблюдение: оказывается, многие и многие люди, связанные с разработкой ПО, нынче думают, что существует только первый, “офисный” мир и его законы универсальны. Про то, как делают управляющее ПО, скажем, для ракеты “воздух-воздух”, эти “офисные” разработчики даже и не задумываются. И это, наверное, правильно – зачем бы им?

добавить отзыв

0.0012221336364746