Підсумки: 9 головних технологічних проривів 2019 року

На зв'язку Олександр Чистяков, я євангеліст vdsina.ru та розповім про 9 найкращих технологічних подій 2019 року.

В оцінці я більше покладався на свій смак, аніж на думку експертів. Тому до цього списку, наприклад, не увійшли безпілотні автомобілі, тому що нічого принципово нового та дивовижного у цій технології немає.

Я не сортував події у списку за значимістю або вау-ефектом, тому що їхня значимість буде зрозуміла років через десять, а вау-ефект занадто короткостроковий, просто постарався зробити цю історію зв'язковою.

1. Серверні програми, що переносяться на мові програмування Rust під WebAssembly

Я почну огляд з двох доповідей:

1. Доповідь Брайана Кантрілла "Час переписати ОС на Rust?", прочитаний ним ще 2018-го.

На момент прочитання доповіді Брайан Кантрілл працював у компанії Joyent на позиції CTO і ще не здогадувався, чим закінчиться для нього і Joyent 2019-й.

2. Доповідь Стіва Клабника, члена core team мови Rust та автора книги “The Rust Programming Language”, що працює в Cloudflare, де він розповідає про особливості мови Rust та технологію WebAssembly, що дозволяє використовувати веб-браузери як платформи для запуску додатків.

2019-го WebAssembly зі своїм інтерфейсом WASI, що надає доступ до об'єктів операційної системи, таких як файли і сокети, зробила крок за рамки браузерів і націлюється на ринок серверного програмного забезпечення.

Суть прориву очевидна — у людства з'являється ще один рантайм, здатний запускати програми, що переносяться для Web (хто-небудь пам'ятає принцип WORA, придуманий ще авторами мови Java?).

Крім того, у нас з'явився відносно безпечний спосіб створювати ці програми завдяки мові Rust, сенс існування якої полягає в тому, щоб знищувати цілі класи помилок ще на етапі компіляції.

WebAssembly настільки перевертає гру, що Соломон Хайкс, один із творців Docker, писав про те, що, якби WebAssembly та WASI існували у 2008-му, Docker би просто не народився.

Підсумки: 9 головних технологічних проривів 2019 року

Не дивно, що саме Rust опинився в лавах освоювачів нової технології, що переноситься — його екосистема динамічно розвивається і Rust вже кілька років залишається найулюбленішою мовою програмування згідно з результатами опитування, що проводиться StackOverflow.

Це слайд з доповіді Стіва, який наочно показує співвідношення числа помилок безпеки, яких можна уникнути при використанні Rust до загальної кількості помилок в MS Windows, знайдених за останні півтора десятиліття.

Підсумки: 9 головних технологічних проривів 2019 року

Компанія Microsoft мала якось відповісти на такий виклик, і вона відповіла.

2. Project Verona від Microsoft, який врятує Windows та відкриє нову сторінку історії для будь-якої ОС

Кількість помилок в ядрі Microsoft Windows і більшості програм користувача майже лінійно збільшувалася протягом останніх 12 років.

Підсумки: 9 головних технологічних проривів 2019 року

У 2019 Метью Паркінсон з Microsoft представив публіці Project Veronaякий може покласти цьому кінець.

Це ініціатива Microsoft зі створення безпечної мови програмування, заснованої на ідеях мови Rust: колеги з Microsoft Research з'ясували, що більшість проблем з безпекою пов'язана з важкою спадщиною мови C, якою написана більша частина Windows. Rust-подібна мова Verona керує пам'яттю та конкурентним доступом до ресурсів, використовуючи принцип абстракцій із нульовою вартістю. Якщо ви хочете докладно розібратися, як він працює, перегляньте доповідь самого Паркінсона.

Цікаво, що компанію Microsoft традиційно сприймають як імперію зла та супротивника всього нового, незважаючи на те, що Саймон Пейтон-Джонс, Основний розробник Glasgow Haskell Compiler, працює саме в Microsoft.

Підсумки: 9 головних технологічних проривів 2019 року

Питання Браяна Кантрілла з першого пункту: "Чи не час переписати ядро ​​операційної системи на Rust?" отримав несподівану відповідь — очевидно, що ядро ​​операційної системи переписати поки що неможливо, але програми, що працюють у userspace, вже переписуються. Почався непереборний процес, і це відкриє нову сторінку майбутнього для всіх операційних систем.

3. Зліт популярності мови програмування Dart завдяки фреймворку Flutter

Я впевнений, що наступна новина є великим сюрпризом не тільки для нас і широкої публіки, а й більшості безпосередніх учасників процесу її формування. Мова програмування Dart, що з'явилася в Google вісім років тому, цього року показала стрімке зростання популярності.

Я використовую свій метод оцінки популярності мов програмування за допомогою аналізу репозиторіїв на Github раз на місяць оновлюючи дані у таблиці. Якщо на початку року популярних репозиторіїв на Dart було лише 100, то сьогодні їх уже 313.

Dart обігнав за популярністю Erlang, PowerShell, R, Perl, Elixir, Haskell, Lua та CoffeeScript. Швидше, здається, цього року не зростала жодна інша мова програмування. Чому так сталося?

Одна зі знакових доповідей цього року за версією аудиторії HackerNews був прочитаний Річардом Фельдманом і називався "Чому функціональне програмування не є нормою?" Значна частина доповіді присвячена аналізу того, як мови програмування стають популярними. Одна з основних причин, за версією Річарда — наявність популярної програми або фреймворку, інакше кажучи the killer app.

Для мови Dart причиною популярності став фреймворк розробки мобільних додатків Flutter, зліт популярності якого, згідно з Google Trends, якраз припав на початок цього року.

Підсумки: 9 головних технологічних проривів 2019 року

Ми нічого не знаємо про Dart, тому що не займаємося мобільною розробкою, але щиро вітаємо ще одну мову програмування зі статичною типізацією.

4. Шанс на виживання ядра Linux та його ком'юніті завдяки віртуальній машині eBPF

Ми у VDSina любимо конференції: цього року я їздив на конференції DevOops у Санкт-Петербурзі та брав участь у круглому столі, присвяченому трендам та гарячим штучкам в індустрії. 2019-го в таких розмовах лідирували думки:

  • Docker мертвий, тому що занадто нудний
  • Kubernetes живий і протягне десь рік - про нього ще будуть говорити на конференціях 2020 року
  • тим часом, у ядро ​​Linux ніхто з живих людей не заглядає вже давно

Я не поділяю останнього пункту, на мій погляд, у розробці ядра Linux зараз відбуваються не просто цікаві, а революційні речі. Найпомітніша — віртуальна машина eBPF, спочатку створена для вирішення найнудніше завдання фільтрації мережних пакетів, а потім переросла у віртуальну машину рівня ядра загального призначення.

Підсумки: 9 головних технологічних проривів 2019 року
Розробка під ядро ​​Linux: було

Підсумки: 9 головних технологічних проривів 2019 року Підсумки: 9 головних технологічних проривів 2019 року
Розробка під ядро ​​Linux: стало

Завдяки eBPF, ядро ​​тепер повідомляє про настання подій, які можна частково обробляти поза ядром — інтерфейс дає можливість безпечно та ефективно взаємодіяти з ядром з userspace і розширювати та доповнювати функціональність ядра Linux, минаючи всевидюче око Лінуса Торвальдса.

До eBPF розробка програм, діяльність яких тісно пов'язана із взаємодією з ядром Linux була непростою історією — для створення речей на кшталт драйверів не дуже швидких пристроїв та інтерфейсів для файлових систем у userspace потрібно проходити формальну процедуру review досвідченими розробниками ядра Linux.

Поява інтерфейсу eBPF сильно спростила процес написання таких програм — вхідний поріг знизився, розробників побільшає і комм'юніті знову оживе.

Я не самотній у своєму ентузіазмі: розробник ядра з багаторічним стажем Девід Міллер декларує важливість eBPF для виживання екосистеми розробки ядра. Інший, не менш відомий розробник Брендан Грегг (Я його великий фанат) називає eBPF проривом, Якого не було 50 років.

Тим часом Лінус Торвальдс за подібне зазвичай публічно не хвалить, і я можу його зрозуміти — кому хочеться публічно виставляти себе ідіотом? 🙂
Підсумки: 9 головних технологічних проривів 2019 року

5. Linux забив майже останній цвях у труну FreeBSD завдяки асинхронному інтерфейсу io_uring в ядрі Linux

Якщо вже мова зайшла про ядро ​​Linux, необхідно відзначити й інше значне покращення, що відбулося цього року: включення до нового ядра високопродуктивного асинхронного API введення/виведення io_uring за авторством Дженса Ексбоу з Facebook.

Багато років системні адміністратори і розробники під FreeBSD доводили свій вибір фактом, що у FreeBSD асинхронне введення-виведення було зроблено краще, ніж у Linux. Наприклад, цей аргумент використав у своїй доповіді у 2014-му році Гліб Смирнов із Nginx.

Тепер гра перекинулася. На використання io_uring вже перейшла розподілена файлова система Ceph і результати тестів продуктивності вражають - зростання кількості операцій введення/виводу за секунду становить від 14% до 102% залежно від розміру блоку. Існує прототип, що використовує асинхронне введення-виведення в PostgreSQL (принаймні, для background writer), заплановано подальші роботи з перекладу PostgreSQL на асинхронне введення-виведення. Але з огляду на консервативність спільноти розробників, 2020-го ці зміни ми ще не побачимо.

Підсумки: 9 головних технологічних проривів 2019 року

6. Тріумфальне повернення компанії AMD з лінійкою процесорів Ryzen

Нічого незвичайного, просто компанія AMD, яка тривалий час була в індустрії на других ролях, б'є рекорд за рекордом.

Нова лінійка процесорів Ryzen показала неймовірне співвідношення ціна/продуктивність: вони домінують у списку найбільш продаваних процесорів на Amazon, а в деяких регіонах продаж процесорів AMD перевищив продаж Intel. У конкурентній боротьбі Intel змушена йти на вкрай непопулярні заходи: змушує програми, створені за допомогою їхнього власного компілятора, працювати менш ефективно на процесорах конкурента. Незважаючи на брудні способи боротьби Intel, ринкова оцінка AMD впритул наблизилася до рекордних значень 2000-го року.

7. Після AMD, Apple цілиться відкусити шматок пирога Intel за допомогою iPadOS і старих хитрощів Гейтса

У битвах гігантів зазвичай намагаються брати участь усі, хто може тримати в руках зброю, і на кормову базу Intel претендує не лише компанія AMD. Компанія Apple повелася як старий бик з анекдоту.

ми повільно спустимося з гориСтарий і молодий бик стоять на вершині гори, а внизу пасеться череда корів.
Молодий бик пропонує старому:
- Слухай, давай швиденько-швиденько спустимося, т**нем по корові
і швиденько-швиденько піднімемося назад!
— Ні!
— Ну, тоді давай швиденько-швиденько спустимося, т**нем по дві корови і швиденько-
швиденько піднімемося назад!
— Ні!
— А що ж тоді ти пропонуєш?
— Ми повільно-повільно спустимося з гори, перетікаємо всю череду і
повільно-повільно повернемося на місце!

Випустивши новий iPadOS, Apple використовувала проти Intel тактику, яка називається disruptive innovation - підривні інновації.

Визначення Вікіпедії

"Підривні інновації" (англ. Disruptive innovation) - інновації, які змінюють співвідношення цінностей на ринку. При цьому старі продукти стають неконкурентоспроможними просто тому, що параметри, на основі яких раніше проходила конкуренція, втрачають своє значення.

Прикладами «підривних інновацій» є телефон (замінив телеграф), пароплави (замінили вітрильні судна), напівпровідники (замінили електровакуумні прилади), цифрові камери (замінили плівкові), електронна пошта («підірвала» традиційну пошту).

Apple використовує свої власні процесори на базі ARM з низьким енергоспоживанням і це виявилося для користувачів важливішим, ніж продуктивність, що трохи відстає від Intel x86.

Apple встигає урвати частину ринку, перетворюючи iPad з терміналу для розваг на повноцінний робочий інструмент — спочатку для тих, хто створює контент, а тепер і для розробників. Звичайно, найближчим часом ми не побачимо MacBook на базі ARM, але невеликі неприємності з дизайном клавіатур MacBook Pro сприяють пошуку альтернативних рішень і одним із них обіцяє стати iPad Pro з iPadOS.

Причому тут Гейтс та Microsoft?

Свого часу Гейтс провернув такий самий трюк з IBM.

У 1970-х IBM домінував на ринку серверів, з упевненістю гіганта, не звертаючи уваги на персональні комп'ютери для обивателів. У 1980-х Гейтс створює гроші IBM і ліцензує йому MS-DOS, залишаючи права на операційну систему він. Отримавши гроші, Microsoft створює під MS-DOS графічний інтерфейс і народжується Windows — спочатку просто графічна надбудова над DOS, а потім і перша операційна система під PC, зручна для використання широкими масами. IBM, будучи великою неповороткою компанією, програє ринок персональних комп'ютерів молодої та швидкої Microsoft. Я дуже коротко переказав цю чудову історію, тому якщо вам цікаво, як у 2020-му Apple гратиме проти Intel за допомогою iPadOS, дуже рекомендую прочитати її повністю.

8. Зміцнення позицій ZFSonLinux - старий кінь борозни не псує

Компанія Canonical представила можливість встановлення Ubuntu з використанням файлової системи ZFS як root file system прямо з інсталятора. Іноді мені здається, що інженери, які працювали в Sun Microsystems, являють собою окремий біологічний вид людини розумної (вже згадувані вище Брайан Кантрілл і Брендан Грегг працювали в Sun). Посудіть самі, незважаючи на багаторічні спроби всього людства зробити щось, хоча б віддалено схоже на файлову систему ZFS, незважаючи на нерозв'язні ліцензійні обмеження, що перешкоджають включенню вихідного коду ZFS в основну гілку розробки ядра Linux, ми все ще використовуємо ZFS, і в Найближчим часом ситуація не зміниться.

9. Oxide Computer Company — ми пильно стежитимемо за командою, яка явно здатна на багато чого — як мінімум, створити круте шоу

Я завершую свій список новою згадкою Брайана Кантрілла, з якого я й почав.

Брайан Кантрілл з іншими інженерами (деякі з яких також раніше працювали в Sun) заснував підприємство під назвою Oxide Computer Company, Основною метою якого є створення серверної платформи, придатної для використання у великих масштабах. Відомо, що великі корпорації, такі як Google, Facebook і Amazon, не використовують у своїй діяльності звичайне серверне залізо. Компанія Браяна покликана усунути цю нерівність, розробивши програмно-апаратну платформу, придатну для використання будь-яким хмарним сервісом (не обійдеться без мови програмування Rust).

Їх задум — обіцянка нової революції, і я, як мінімум, із задоволенням спостерігатиму за рухом їхньої думки та їхньою розробкою у майбутньому 2020 році.

Що ми встигли зробити у 2019 у VDSina

Технологічних проривів у 2019 з VDSina ми не робили, але нам все одно є чим пишатися.

У лютому ми додали можливість використовувати локальну мережу між серверами та запустили послугу реєстрації доменів. Ціну зробили однією з найнижчих на ринку - 179 руб за ru/рф, у тому числі і за продовження.

У березні виступили на IT Global Meetup #14.

У квітні збільшили ширину каналу для кожного сервера зі 100 до 200 мегабіт, значно збільшили ліміт трафіку для всіх тарифів (крім найдешевшого) — до 32 ТБ на місяць.

У липні у клієнтів з'явилася можливість автоматично встановлювати Windows Server 2019. У межах московської локації почали надавати безкоштовний захист від DDoS.
Також у липні наша компанія з'явилася на Хабрі, дебютувавши статтею, як ми написали свою панель управління хостингом та як це допомогло нам зробити якісний стрибок у підтримці клієнтів.

У серпні додали можливість створювати знімки – резервні копії серверів.
Викотили громадський API.
Збільшили ширину каналу для кожного сервера з 200 до 500 мегабіт.
Брали участь у конференції Chaos Constructions 2019, роздавши як мірча батог з логотипом компанії (слоган кампанії був "Коли розробник зверху") і підірвали телеграм-чати.

У вересні ми запустили наймиліший та найдружніший інстаграм IT-компанії — про новини та будні VDSina почав розповідати песик-розробник.

Підсумки: 9 головних технологічних проривів 2019 року

У листопаді ми з'їздили на Highload++, взяли участь у круглому столі бази даних у Kubernetes і одягли учасників у шапки-акули.

У грудні виступили на DevOps-мітапі в офісі ГазПромНафти з доповіддю про бази даних у Kubernetes та на конференції DevOpsDays у Москві з доповіддю про вигорання, який, безперечно, став моїм найкращим виступом за рік.

Висновок

Як казав Нассім Талеб, набагато простіше передбачити те, чого ми точно не побачимо. Хочу зазначити, що все те нове, що ми побачимо 2020-го бере початок ще 2019-го, 2018-го і раніше. Я не беруся передбачати майбутнє точно, але 2020-й точно не стане роком Linux на робочому столі (коли ви востаннє бачили робочий стіл?) а рік Linux на мобільних пристроях ми спостерігаємо вже років десять.

У будь-якому разі сподіваюся, що через рік ми знову зберемося та обговоримо, як усе склалося насправді.

Всіх з наступаючими святами!

Підсумки: 9 головних технологічних проривів 2019 року

Підписуйтесь на нашого розробника в Instagram

Підсумки: 9 головних технологічних проривів 2019 року

Джерело: habr.com

Додати коментар або відгук