Досвід із використання відкритого коду в уряді Мексики
Це переклад статті із LWN.NET
Прийняття урядами програмного забезпечення з відкритим вихідним кодом мало як злети, так і падіння. Хоча відкритий код здається очевидним вибором, виявляється, що уряди можуть бути дивно опірними до використання вільного ПЗ з відкритим кодом (FOSS) з різних причин. Федеріко Гонсалес Уейт виступив на конференції Open Government на SCALE 22x у Пасадені, Каліфорнія, щоб згадати свій досвід роботи із і на мексиканський уряд. Він очолював декілька проєктів, що передбачали перехід від пропріетарних, часто хижацьких, програмних компаній, з певним успіхом і також невдачами.
Гонсалес Уейт почав з того, що він є мексиканцем/ківі ("не так много таких як ми"
, сказав він зашарівшись), який провів дев’ять або десять років на високих посадах у мексиканському уряді, «просуваючи впровадження відкритого коду»
. Серед іншого він був CTO у Міністерстві закордонних справ; «Я фактично відповідаю за те, що сьогодні мексиканці мають електронні паспорти»
. Це був один з проєктів, яким він керував, і частина його була виконана за допомогою ПЗ з відкритим кодом, що люди вважають дивовижним, за словами Гонсалеса Уейта. Він працював в офісі національної стратегії при президенті Андресі Мануелі Лопесі Обрадорі, а згодом став генеральним директором Національного центру досліджень і інновацій Мексики.
У всіх своїх ролях він виступав за використання відкритого коду в уряді; бути «змінювачем» такого масштабу завжди нелегко, зазначив він. Він залишив уряд після недавньої зміни президента (на Клаудію Шейнбаум) і зараз працює «допомогаючи людям здійснювати власні трансформації»
до відкритого коду, водночас слідкує за наступними великими тенденціями. Він зазначив, що відповість на запитання в кінці, але можливо не зможе відповісти на всі через конфіденційні зобов’язання, проте він «вже не є публічним посадовцем, тому це дає мені більше свободи говорити відкрито»
.
Чому?
«То чому відкритий код для уряду?»
Однією з причин є скорочення витрат; За його словами, Мексика є фінансово невеликою, розвиваючоюся країною, яка завжди прагне зменшити витрати. Оплата за ліцензування коштувала великих грошей, які можна було використати на інші справи. Адміністрація Лопеса Обрадора прийняла закон про план жорсткої економії, тому різні дії (наприклад, виїзд урядовців з країни на роботу) потребували схвалення на рівні президента. Це також вплинуло на закупівлю ліцензій, і план підштовхнув використання відкритого коду.
Іншою важливою причиною була робота, щоб Мексика мала “ІТ-суверенітет”. Одна з головних проблем країни полягає в тому, що її ІТ-лідерство не є технічним, а це означає, що люди підписували проекти та ліцензії, не розуміючи, що вони купують. «Вони справді не знали, чи отримують хороше співвідношення ціна-якість»
.
Для підтримки програмного забезпечення з відкритим вихідним кодом необхідно створити кадри в уряді; "немає сенсу будувати всю інфраструктуру з відкритим кодом, якщо у вас немає таланту підтримувати її"
. Було докладено багато зусиль, щоб залучити нових людей і навчати наявних працівників для цього напрямку. Одна з цілей — перейти від нації-споживача ІТ до нації-виробника ІТ. Багатьох, хто думає про Мексику як про виробничу та монтажну націю, дивно, що ця країна справді виробляє багато технологій, сказав він. Однак багато з того, що вироблялося в уряді, висмоктувалося приватним сектором; Останнім часом це змінюється, тому уряд може пакувати та навіть продавати свої ІТ-розробки.
Інша мета полягає в тому, щоб Мексика стала більш самодостатньою, щоб вона не була заблокована різного роду продавцями. На своїй останній посаді він міг бачити, що відбувається в усьому уряді. Спільним є те, що коли агентства запитували, чому вони витрачають стільки на ту чи іншу послугу, вони стверджували, що не мали вибору, хоча є багато інших компаній, які пропонують такі ж послуги. Виявилося, що різні компанії-підрядники корупційно поміщали ліцензії на програмне забезпечення, які вони купили для уряду, на свої власні імена, що призвело до блокування їхніх послуг. Перехід до відкритого вихідного коду може зламати ці та інші типи блокувань.
За словами Гонсалеса Вейта, в уряді існує кілька агенцій, які займаються різними частинами технологічної головоломки. Він очолював INFOTEC, який є постачальником ІТ-послуг для решти уряду. Він керував найбільшим телекомунікаційним проектом у світі на той час, розмістивши 6000 антен BTS і розгорнувши понад 30 000 км оптоволоконного кабелю в різних місцях по всій країні. Це було частиною проекту CFE Internet Para Todos, який спрямований на демократизацію доступу до Інтернету; до цього у великому регіоні Мексики не було Інтернету, оскільки він був комерційно нежиттєздатним.
Усі технологічні проекти в рамках федерального уряду вимагають схвалення офісу президента; Гонсалес Вейт сказав, що це було частиною законів країни протягом тривалого часу, але не виконувалося. За часів адміністрації Лопеса Обрадора під час перегляду цих проектів часто виявлялося, що вони можуть використовувати відкритий вихідний код, а не запропоноване дороге пропрієтарне рішення, тому проектам потрібно було змінитися.
Використання програмного забезпечення з відкритим кодом закріплено в мексиканському законодавстві з 2021 року, коли це було спеціально дозволено державним установам. Гонсалес Вейт коротко проглянув кілька законодавчих актів, щоб показати, що уряд серйозно налаштований на скорочення витрат і отримання контролю над своєю інфраструктурою за допомогою програмного забезпечення з відкритим кодом.
Закордонні справи
Він очолював проект для агентства закордонних справ; все почалося з розділення даних, які зберігалися, щоб частина їх була розміщена в хмарі, тоді як найбільш конфіденційні дані все ще зберігалися в державному центрі обробки даних у Мексиці. Агентство опиралося переміщенню будь-яких своїх даних у хмару, оскільки це нібито були «дані національної безпеки», але не було класифікації даних, яка б уточнювала, які дані насправді конфіденційні. Під час тиску агентство стверджувало, що все, що коли-небудь вироблялося в консульстві або в консульстві, відповідає вимогам; він зазначив, що це означає, що консульства, які надсилають запрошення на вечірки та святкові привітання, порушують закон про національну безпеку. Це призвело до спроб класифікувати дані і, таким чином, до того, що Міністерство закордонних справ стало другою державною установою, яка зберігає дані в хмарі.
Іншою частиною проекту був відхід від Oracle до PostgreSQL. Ця зміна призвела до різних погроз і залякувань з боку компанії, коли вона дізналася про зміни, сказав Гонсалес Вейт. «Вони сказали мені, що вся паспортна система країни збирається впасти»
і що це буде його провина, що Мексика не зможе нікого впустити чи випустити з країни. «Вгадайте що? Цього не сталося»
.
Виявилося, що співробітники, які працюють над базою даних, чули про PostgreSQL, але ніколи нею не користувалися. Тож його команда звернулася до мексиканської спільноти PostgreSQL за допомогою та порадами. Щоб перенести інформацію з Oracle у PostgreSQL, знадобилося близько трьох місяців. Команда скористалася зміною, щоб реструктуризувати базу даних, «оскільки ми виявили, що наш постачальник сховища поводився трохи неслухняно»
, зберігаючи дані три-чотири рази, щоб виставляти рахунок на більше грошей. "Мексика все ще дуже корумпована країна, як і багато інших країн світу"
, - сказав він. Коли ви приймаєте рішення, які забирають гроші з кишень людей, вони «починають ставати дуже бридкими»
.
«Найбільшою зміною»
від переходу стало те, що агентство тепер мало прямий доступ до своїх даних і не покладалося на партнерів і підрядників у наданні заявок і звітів. Це призвело до можливості розробити електронний паспорт Мексики. Платформа для цього була розроблена власними силами, «тому ми не оплачуємо жодних ліцензій»
; За його словами, на платформі використовувалися різні бібліотеки програмного забезпечення з відкритим кодом, у тому числі для обробки біометричної інформації.
Освіта
Окрім необхідності перепідготовки технічного персоналу з питань відкритого коду, його команда виявила, що студенти університетів і технікумів також не знайомляться з програмним забезпеченням з відкритим кодом. INFOTEC започаткував велику програму стажування для працевлаштування студентів до державних установ, але виявив, що студенти не можуть виконувати свої обов’язки через відсутність підготовки. Це призвело до створення тримісячних навчальних таборів для розробки програмного забезпечення та кібербезпеки для стажерів. За цей час стажери отримували гроші, що зробило навчання дорогим для агентств, але це пришвидшило стажерів, щоб вони могли бути продуктивними надалі.
По дорозі він відвідав комунікаційну лабораторію в технічному університеті і побачив, що все обладнання там від Cisco. Студенти там не знали, як, скажімо, налаштувати брандмауер для будь-якого іншого типу обладнання або використовувати інструменти програмного забезпечення з відкритим кодом, і вони боялися вивчати щось інше. За словами Гонсалеса Вейта, це частина стратегії компаній, «де вони переважно роздавали обладнання університетам, але створювали перешкоди для студентів»
.
Щоб боротися з цим, INFOTEC розробив чотири освітні онлайн-програми, додавши хмарні обчислення та операції центрів обробки даних до двох предметів навчального табору, усі вони базуються на програмному забезпеченні з відкритим кодом. Це були дворічні курси, які включали практичну роботу в уряді на різних рівнях (місцевому, державному чи федеральному). Також була потреба у «зеленому коридорі», тому два навчальні табори були перетворені на 22-тижневі навчальні курси з цих предметів. За його словами, ці освітні проекти з відкритим вихідним кодом перетнули кордони, що було «дуже круто»
; Сальвадор прийняв їх, і більше 5000 людей зареєструвалися. Крім того, курс з кібербезпеки було змінено, щоб націлити його на нетехнічних державних службовців у Мексиці, і більше 3000 скористалися ним.
Інша форма навчання прийшла в проект при використанні Mifos для банків у Мексиці. Mifos — це платформа з відкритим вихідним кодом для обробки різноманітних фінансових операцій. Однією з великих перешкод для запуску проекту в Мексиці було навчання регулюючого органу (Національної комісії з банківської справи) про програмне забезпечення з відкритим кодом. Його команда витратила близько шести місяців на зустрічі з комісією, щоб провести цю освіту. Це окупилося, і, коли проект набрав обертів, регулятори мали необхідний контекст, який згладив шлях. Проект співпрацює зі спільнотою Mifos; деякі члени спільноти також поїхали до Мексики, щоб зустрітися з регуляторними органами.
Іншою великою проблемою цього проекту була можливість повернути код, розроблений для мексиканського банківського обслуговування, до проекту Mifos. Банківські установи мають побоювання щодо безпеки випуску коду, але спільнота Mifos хотіла додати код до свого репозиторію та рекламувати розгортання, яке було одним із найбільших за всю історію. Це була розмова, яка тривала протягом трьох років і врешті-решт призвела до складної схеми, за якою старіші версії коду можна було додавати до Mifos після того, як два наступних випуски були розгорнуті у виробництві.
Банківський проект почався частково завдяки дослідженню, яке показало, що величезна кількість грошей витрачається на роботу існуючої інфраструктури для обробки певних типів позик. Але з двох різних розгортань, які виникли в рамках проекту, те, яке було спрямовано безпосередньо на економію значної частини цих грошей, було скасовано після того, як було доведено, що воно працює. Інше розгортання, яке фактично взяло код із першого та переробило його для обробки різних видів позик, було меншим за розміром, але було успішно переведено на відкритий код.
Основна відмінність полягає в тому, що успішний проект був зроблений для нещодавно реструктуризованої агенції, у якій не було упередженості та вкорінених інтересів, як у іншої агенції. Керівництво в цій організації було кращим, сказав він, і також трохи відчайдушно прагнуло досить швидко показати офісу президента, що воно виконує свою роботу ефективно.
Уроки
Законодавчі норми щодо відкритого коду дуже допомогли, «оскільки вони дали правову базу, щоб пояснити людям, чому ми щось робимо»
, але цього було недостатньо. Щоразу, коли виникала ідея використання програмного забезпечення з відкритим вихідним кодом, виникали побоювання через брак знань про це, але, оскільки ті, хто приймав рішення, були державними чиновниками, крім того, існував юридичний страх. «Ця відповідальність може привести вас до в'язниці, тому не змінюйте технології, залиште все, як є, заплатите ці мільйони, і нічого не станеться, у вас все буде добре»
.
За його словами, технології часто розглядаються як проблема, але загалом він виявив, що проблеми пов’язані з використанням застарілих технологій і браком знань про дані, які обробляються. Часто немає документації щодо даних та їх структури, а також нерозуміння цього людьми, які за це відповідають. Ще однією перешкодою є погане керівництво в агентствах; для змін такого роду потрібен лідер, який розуміє, що потрібно зробити, і правильно розподіляє людей для роботи над цим. Багато мексиканських урядовців є політичними призначенцями, які не хочуть брати участь в управлінні проектом, тому вони передають його комусь іншому, хто вже і так робить занадто багато інших речей.
Іншою причиною провалу проектів було те, що керівництво вирішило, що перехід на відкрите програмне забезпечення означає, що в майбутньому не будуть потрібні гроші. Але сервери, розробники, системні адміністратори тощо потребують бюджету, якщо проект має бути успішним. Крім того, деякі державні службовці не були зацікавлені в отриманні навичок, необхідних для переходу на програмне забезпечення з відкритим кодом. Багато хто був радий передати всю роботу постачальнику через брак знань або «інші особисті мотиви»
.
Найбільший урок, який він засвоїв, полягав у тому, що проекти переходу на програмні рішення з відкритим вихідним кодом полягали в тому, що «ви або крупно виграєте, або крупно програєте»
. Він і його команда ніколи не стикалися з технологічною чи нормативною проблемою, яку неможливо було б вирішити; як технологію, так і правила можна переписати, «просто потрібен час і зусилля»
. Вони змогли заздалегідь передбачити більшість сценаріїв збитків, оскільки побачили, що логічні аргументи не переважають; коли це відбувається, "є лише одне пояснення, і це альтернативний мотив"
. Його «рекомендація номер один»
полягає в тому, щоб ще до того, як проект розпочався, переконатися, що він має відповідного лідера та підтримку всередині агентства чи організації; це справжній визначальний фактор для того, чи буде проект успішним чи проваленим.
У відповідь на запитання громадянина Мексики, який раніше працював підрядником в INFOTEC, Гонсалес Вейт сказав, що всі великі компанії, що розробляють пропрієтарне програмне забезпечення, «великі хулігани»
щодо перевірки ліцензій (для забезпечення дотримання умов пропрієтарного програмного забезпечення). Його викликали в посольство США і йому погрожували, оскільки Мексика використовувала технології, які не були з США; ці погрози були відхилені, коли він пояснив, що уряд також використовував програмне забезпечення та послуги Amazon, Google і Microsoft. Різні компанії використовують уряд США, щоб залякувати інші країни, але вони також використовують перевірку ліцензій як реакцію на проекти, які переходять на програмне забезпечення з відкритим кодом. Кожного разу, коли відбувався вдалий перехід, «через півроку була перевірка»
; За його словами, наявність правильної команди юристів допомагає захиститися від такої тактики.
Раніше Гонсалес Вейт зазначав, що нова президентська адміністрація не вказала використання програмного забезпечення з відкритим кодом у жодному із законів, які були прийняті досі. Інший мексиканець запитав його, чи він стурбований тим, що нова адміністрація відмовляється від відкритого коду. "Я думаю, що ще занадто рано це знати"
, - сказав він. Наразі відповідне законодавство попередньої адміністрації не було скасовано, але це станеться незабаром, і він сподівається, що зусилля з відкритим кодом продовжаться.
Останнє запитання, яке він відповів, стосувалося вирішення проблеми старіння в бібліотеках та інших залежних частинах державних систем; багато з цих проектів працюватимуть десятиліттями, але залежності можуть не підтримуватися так довго. Гонсалес Уейт погодився, що це серйозна проблема; багатьма урядами керують політики з коротким проміжком уваги. Політики шукають визнання, яке призводить до голосів, а потім йдуть далі. У Мексиці це особливо проблематично через зміну президента кожні шість років; більшість контрактів і планів не виходять за цей перехідний момент. Важливо вирішити цю проблему, оскільки технології змінюються дуже швидко, і для цього в Мексиці знадобиться серйозне законодавство — поки що ця проблема залишається невирішеною.
Відео лише дововіді незабаром має з’явитися на сторінці SCALE на YouTube, але повний набір доповідей із кімнати доступний, і там є ція розмова як перша доповідь в цей день.