Monthly Archives: November 2023

Отворен код и придобиване на софтуер от държавата

от Божидар Божанов
лиценз CC BY

По покана на Европейската Комисия участвах на конференция за използването на софтуер с отворен код в обществения сектор, на която споделих следното:

България през 2016 г. прие закон, с който всички административни органи се задължават при възлагане на разработка на софтуер, в договорите и спецификациите си да включат клаузи, с които да изискват разработеният софтуер да е публичен (от първия ден на разработка) и да е с лиценз, който позволява безплатно използване от всеки.

Това е важна мярка, за чието спазване настоявам във всичките си качества оттогава, по следните причини:

  1. Преизползване – когато кодът на една система е публичен, всеки друг, разработващ сходна функционалност, може да го използва и развива. В системите в публичния сектор има много повтарящи се изисквания и е загуба на време и пари да се разработват всеки път от нулата.
  2. Прозрачност и доверие – след като системата е разработена с публични средства, на обществото се дължи кода на системата. Така ще знаем как точно работи дадена система (и че работи правилно, съгласно закона, а не съгласно нечии интерпретации, както се оказа наскоро със системата за мониторинг на наличностите на лекарствата), и ще имаме повече доверие в нея (неслучайно направих предложение да се изгради нов софтуер на машините за гласуване, който да бъде отворен, но за съжаление това предложение не се прие в миналия парламент)
  3. Качество – когато изпълнител на дадена поръчка знае, че кодът, който произведе, ще бъде публичен, внимава повече да спазва добрите практки, да прави кода по-четим и по-подреден. Не един път съм чувал, че „ще го публикуваме, ама чакай първо да го пооправим малко“. Включително на самата конференция, от колега от друга държава.
  4. Одитируемост – държавата трябва да може да одитира какво точно е получила и да гарантира, че е получила (и че в продукционна среда работи) правилният софтуер. Примерът с тол системата, чийто изходен код липсва, показва защо това е важно – АПИ в момента не може да одитира в дълбочина собствената си система.
  5. Ценова ефективност – има два аспекта на отворения код, свързан с цената за държавата, и по-точно за общата цена на притежаване (total cost of ownership). Първият е, че когато използваш готов продукт с отворен код, той е безплатен (спрямо цената на лицензите или абонамента за платен такъв). Но вторият аспект е, че когато нямаш кода да даден софтуер, или нямаш права да го модифицираш, си до голяма степен заключен за един доставчик. Ако лицензът на кода позволява модификации (каквото позволят всички open source лицензи), софтуерната компания, която го поддържа, може да бъде сменена, което пък означава конкуренция и съответно – по-ниска цена.

Имаме закона, имаме съответната наредба и шаблона за технически задания, имаме и правомощията за контрол по прилагането и съгласуване на заданията, така всички нормативни и процесни предпоставки са налице. Не е налице още културата и пълното разбиране у възллжителите защо това е важно (пример за това е моят въпрос до МВР защо по проекта за електронна идентификация все още няма публикуван изходен код, въпреки че се работи по него). Тук е моментът да отбележа, че мобилното приложение за електронна идентификация, която аз възложих като министър, също няма публикувана работната версия на код, защото проектът беше спрян в служебния кабинет и ключови негови части блокирани заради отказ от предоставяне на достъп до данни от МВР. Ако проектът беше продължил, щях да настоявам за работа именно в хранилището на МЕУ.

Освен честото неспазване на изискванията, имаме и притеснения от страна на службите за сигурност, които виждат риск в разкриването на изходния код. Аз не съм съгласен с тези притеснения, тъй като не се публикува нищо, свързани с оперирането на системата в продукционна среда – нито криптографски ключове, нито пароли, нито мрежови настройки. Да, съществува риск от наличие на уязвимости в кода, които да бъдат видени от хакери, но криенето на кода не означава, че уязвимостите не са там. Криенето, обаче, може да попречи на „белите хакери“ да ги докладват преди да бъде злоупотребено с тях.

Невинаги е възможно да се възлага разработка на софтуер с отворен код – понякога се придобива нещо готово, за което се купува лиценз или абонамент. Трябва предварително да е ясно на възложителя какво си поръчва – готов софтуер, разработка „на чисто“, или хибрид (готов софтуер с надграждане със специфични модули). Именно последното е случаят с тол системата, но държавата не е знаела какво поръчва, и вместо да получи кода на доработените за нея функционалности, е получила само лиценз.

Готовият софтуер е нещо хубаво и удобно, защото зад него стои производител и неговите партньори за внедряване. Но колкото и привлекателно да изглежда, трябва да се направи преценка дали са налични достатъчно добри алтернативи с отворен код. Понякога няма такива, или са твърде далеч като възможности. Понякога има, но няма достатъчно експерти с познания за тях.

Има и случаи, в които изпълнителят твърди (с право или не), че определени библиотеки, съдържащи основни функционалности, са си негови и той само дава лиценз за тях. Това е възможно, като в такива случаи (какъвто би следвало да бъде и този с тол системата), държавата може да поиска една от две опции. За предпочитане е т.нар. code available, вкл. с право на модификации. Т.е. кодът не се публикува, изпълнителят запазва авторските си права, но предоставя кода на възложителя, както и правото той да възложи надграждане на друг. Това е сложно за уреждане, и включва риск от „падане на гаранция“ („не знам какво сте му правили, при нас си работи“). Втората опция е т.нар. source code escrow – кодът се депозира в трета страна, която го предоставя на държавата в случай, че производителят фалира или спре работата по продукта. Това е по-малко желателният подход, тъй като обвързва държавата с един доставчик, но поне „фаталните“ сценарии са покрити.

Остава и казусът с т.нар. „софтуер като услуга“ (SaaS). Там държавата може да поиска достъп до кода, за да го одитира, но нито може да го публикува, нито да го надгражда (освен ако самата система няма plug-in архитектура). Много съвременни софтуерни компании предпочитат „софтуер като услуга“, защото това им дава повторяем приход, по-лесно управление на клиентите и по-добра видимост върху използването. Само че SaaS е оперативен разход, а не капиталов. SaaS представлява задължително заключване за един доставик. Ползите са удобството и нулевата инвестиция в хардуерна инфраструктура. В някои случаи SaaS е валиден подход, но според мен софтуерните компании могат да предоставят т.нар. self-hosted версии на своите продукти, което би било от полза за обществени организации.

Софтуерът с отворен код е най-силен в основните технологични решения – системи за управление на бази данни, операционни системи, уеб сървъри. При този тип софтуер много рядко има причина за комерсиални решения, особено ако има корпоративна поддръжка за софтуера с отворен код „на една ръка растояние“. Затова бих насърчил всички да използват напр. Linux, PostgreSQL, NginX.

При всички положения, когато държавата използва софтуер, който е с отворен код, трябва да дефинира процеси по неговото развитие и управление, напр. механизъм за предлагане на подобрения от участници, различни от избрания изпълнител. Всъщност, в наредбата, която подготвихме през 2016 г., в чл. 60 такъв процес е предвиден, но досега той не е реализиран.

Закупуването на софтуер, неговото управление и поддръжка, изчисляването на цената на собственост и всички останали аспекти са сложни. В един блогпост или няколко изказвания на конференция не могат да покрият всички тези сложности. За да не допуска държавата грешки, трябва да има достатъчно познание по тези въпроси в нейните структури. Министерство на електронното управление и структурите към него могат да бъдат център за такова познание, но не следва да са единствените. Затова обмисляме предлагането на фигурата на Chief information officer (CIO) за администрациите, които да са не просто ИТ директори, отговарящи за оперативните ИТ задачи, а които да имат директна комуникация с органа на власт и да изграждат стратегията и да водят дигиталната трансформация на администрацията.

С времето ще се формират добрите практики, ще се натрупа опит и няма да се допускат грешки, които струват на държавата скъпо, и от които понякога губим години в дадена сфера. А отвореният код ще бъде важен инструмент за дигиталната трансформация.

Материалът Отворен код и придобиване на софтуер от държавата е публикуван за пръв път на БЛОГодаря.

Как се пише: кибератака, кибер-атака или кибер атака ?

от Павлина Върбанова
лиценз CC BY-NC-ND
Правилно е да се пише слято – кибератака, мн.ч. кибератаки, защото това е сложно съществително име, чиито съставни части са от чужд произход и първата не се употребява като самостоятелна дума в българския език. Мощна кибератака блокира болници и спешни отделения в САЩ. Кибератаките са основната опасност пред правителствата и корпорациите, смята водещ израелски киберексперт. […]

Как се пише главен прокурор – с малка или с главна буква?

от Павлина Върбанова
лиценз CC BY-NC-ND
При обикновена употреба словосъчетанието се пише с начална малка буква, тъй като не е собствено име. С него се назовава длъжност.   Висшият съдебен съвет освободи предсрочно от длъжност главния прокурор Иван Гешев. Правомощията на главния прокурор са уредени нормативно в Закона за съдебната власт. При адресиране и при обръщение, когато словосъчетанието не е придружено […]

Мъск, Х и другата гледна точка

от Нели Огнянова
лиценз CC BY

Американските медии подчертават в заглавия, че големи рекламодатели спират рекламата си в мрежата на Мъск Х заради антисемитизъм. Посочват се Warner Bros, Paramount, Sony Pictures , Comcast/NBCUniversal, Apple, Disney, Amazon, Oracle, IBM.

Ню Йорк Таймс съобщава, че Мъск, който купи и преименува Twitter, е изправен пред засилваща се критика, че толерира и дори насърчава антисемитска реч в своята социална медийна платформа. Той напада Джордж Сорос и заплашва да съди Anti-Defamation League/Лигата против клеветата – правозащитна група, която подчертава нахлуването на антисемитизма в Х. Реклами на Apple, Bravo, IBM, Oracle се появяват на X до публикации, насърчаващи бели националистически и нацистки перспективи. Във време, когато антисемитизмът експлодира в Америка и се разраства по целия свят, безспорно е опасно да се утвърждават и насърчават антисемитски теории, казват техни представители.

По-конкретно през седмицата Мъск ентусиазирано е подкрепил в свой пост антисемитско изказване, повече по темата.

Служител по продажбите е маркирал очевидни антисемитски публикации, които сайтът не е премахнал. Linda Yaccarino/Линда Якарино, от юни CEO на Х, е поискала публикациите да бъдат прегледани, но служителят, маркирал публикациите, вече не е в компанията, казват от Х.

Накратко и отново, свободата на изразяване има граници. Не всеки, който ви казва, че е за истинска свобода без цензура, реално допринася за качеството на демократичните дебати. Антисемитизмът не е друга гледна точка, не е допустима проява на плурализъм: насърчаването на бял национализъм и нацизъм е престъпление.

По повод ширещата се и у нас позиция за другата гледна точка.

Как се пише: електоралногеографски, електорално-географски или електорално географски?

от Павлина Върбанова
лиценз CC BY-NC-ND
Това прилагателно име се пише слято – електоралногеографски, също и електоралногеографска, електоралногеографско, тъй като е образувано от съчетание на прилагателно и съществително име – електорална география. В статията е направен електоралногеографски анализ на избирателната активност и изборните предпочитания в община Карнобат на различни видове избори в търсене на възможни обяснения на електоралното поведение на общините. […]

Как се пише: на екс или наекс? 

от Павлина Върбанова
лиценз CC BY-NC-ND
Правописът на това съчетание не е изрично нормиран. Съветваме ви да пишете на екс. Сетих се, че кафето ми вече изстива, и го изпих на екс. Изпивам блудкавата маргарита на екс и тикам чашата в джоба на якето си – ще я задигна, защото ме изнудват. (Захари Карабашлиев, „18% сиво“)

Как се пише: Шенгенско пространство или шенгенско пространство?

от Павлина Върбанова
лиценз CC BY-NC-ND
Правилно е да се пише с главна буква – Шенгенско пространство, тъй като това е съществително собствено име. Втората дума в названието се пише с малка буква, защото е съществително нарицателно име. Най-новият член на Шенгенското пространство е Хърватия, която се присъединява през 2023 г. Засега България и Румъния остават извън Шенгенското пространство.

Как се пише: запрашване или запрашаване?

от Павлина Върбанова
лиценз CC BY-NC-ND
Правилно е да се пише запрашване. При запрашване на въздуха прозорците на обитаваните помещения трябва да се държат затворени. В ТЕЦ „Бобов дол“ се вземат мерки, за да се намали запрашването в района, заяви за БНР изпълнителният директор инж. Любомир Спасов.

Предложения за електронните рецепти

от Божидар Божанов
лиценз CC BY

Днес участвах на срещата на премиера Денков, МЗ, МЕУ и Информационно обслужване със съсловните организации в сектор „здравеопазване“ на тема „електронна рецепта“.

Предложението на МЗ задължението за изцяло електронни рецепти да се премести за април има своите рискове, но дава възможност за повишаване на доверието в системата.

Аз предложих пет неща на срещата:

1. Мека прогенерична политика чрез промяна на опциите по подразбиране – чрез софтуерите, по подразбиране да се позволява генерично заместване, а ако лекарят смята, че трябва да се отпусне лекарство от конкретен производител (има легитимни причини за това), да трябва да отбележи „забранявам заместване“. По този начин фармацевтите ще могат да отпускат еквивалентни лекарства в повечето случаи, ако няма от предписаното – това беше един от основните проблеми при старта на е-рецептите. С това предложение се оставя решението у лекаря.

2. Ясно дефиниране на изключенията, при които могат да се ползват хартиени рецепти – домашни посещения, лекари, които не могат използват технологии, чуждестранни лекар. Също: срив в системата. Това го предложих миналата година на служебния кабинет, когато отмениха електронната рецепта, но се го възприеха.

3. Въвеждане на стандарт за удобство/потребителско изживяване/UX на софтуерите, с които се изписват рецептите. Според мен немалка част от недоволството в лекарското съсловие е поради по-бавното и по-неудобно изписване чрез софтуер. В стандарта може да се включат конкретни тестове и засичане на време за изписване.

4. В „гратисния период“ да се отстранят всички оставащи технически проблеми, с много оперативен процес между МЗ и Информационно обслужване, като големите болници и ДКЦ-тата да се включат активно в тестовете.

5. При отпускане на лекарства по хартиени рецепти (след април) да има улеснено въвеждане на данните от фармацевтите, напр. автоматично при верификация на лекарството.

Тези предложения могат да бъдат включени в Наредба 4, за да бъдат реализирани до април.

Електронните рецепти намаляват порочните практики в системата. Дават повече видимост и възможност за провеждане на здравни политики. Помагат с преодоляването на проблема с антибиотичната резистентност. Затова тези усилия на всички страни си струват.

Материалът Предложения за електронните рецепти е публикуван за пръв път на БЛОГодаря.

Членува ли се Столична община?

от Павлина Върбанова
лиценз CC BY-NC-ND
Столична община е съставно собствено име, което в основната си форма е нечленувано, но в свързана реч се членува – Столичната община. Днес новият кмет на Столичната община положи клетва. Екипи на Столичната община са реагирали на осем сигнала за паднали клони и дървета заради силния вятър през нощта. Забележка: В посочения източник правилото е формулирано […]