html текст
All interests
  • All interests
  • Design
  • Food
  • Gadgets
  • Humor
  • News
  • Photo
  • Travel
  • Video
Click to see the next recommended page
Like it
Don't like
Add to Favorites

Оскорбленный программист едва не сломал интернет, удалив 11 строк кода


Интернет, который мы воспринимаем как нечто вечное, в один момент может обрушиться, словно карточный домик. Это почти случилось на днях, когда один программист в расстроенных чувствах удалил простейшую программу из 11 строк, навредив таким образом тысячам софтверных проектов. Сейчас уже все хорошо, но кейс наглядно демонстрирует, насколько это хрупкая штука — интернет.

Все началось с того, что программист по имени Азер Кокулу написал ничем не примечательный модуль — расширение для популярного языка программирования Node.js. И назвал его Kik. свой модуль Кокулу загрузил на NPM (это как App Store для Node.js-программистов) бесплатно в помощь коллегам.


Но был и другой Kik — приложение-мессенджер, владельцы которого обратились к Кокулу с требованием переименовать модуль. Но программист заартачился. «Когда я начал писал Kik, я не знал, что есть компания с таким названием. И я не хотел, чтобы меня принуждали менять название моей программы», — написал Азер в блоге на Medium.

Как сообщает Business Insider, закон был на стороне противника, который зарегистрировал название задолго до Кокулу с его модулем. В итоге СЕО NPM Исаак Шлуетер аннулировал авторство Кокулу над собственным модулем, не посоветовавшись с программистом.

Создатель приложения Kik Тедж Ливингстон. Фото: BI

«Эта ситуация дала мне понять, что NPM — частная площадка, на которой корпоративные интересы важнее общечеловеческих, а я делаю проекты с открытым кодом, чтобы вооружить людей», — написал Исаак, после чего в порыве эмоций удалил Kik с NPM, а заодно и все свои коды.

Казалось бы, кому какое дело, да вот незадача: именно Кокулу в свое время создал примитивный, но очень популярный модуль npm left-pad. В нем всего 11 строк кода, которые не выполняют ничего особо сложного, однако этот модуль насчитывает 575 000 загрузок. И когда модуль исчез, разработчикам таких интернет-проектов, как Reddit, Twitter и других было очень не все равно.

Такие модули, как npm left-pad, являются по сути шаблонами базовых функций, которые разработчики используют в своих кодах, чтобы не прописывать функции с нуля. Они просто вставляют в код вызов модуля из NPM, и в нужный момент программа загружает его непосредственно из менеджера пакетов. Но если модуль вдруг исчезнет оттуда, компилятор будет вызывать его снова и снова, зациклив программу. А это очень плохо.

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

Глобально исчезновение таких модулей приводит к тому, что популярные проекты вроде Babel, которые помогают Facebook, Netflix и Spotify работать быстрее, а их разработчикам создавать более эффективные интерфейсы, внезапно перестают работать. По данным NPM, жест Кокулу привел к сбоям в работе примерно тысячи софтверных проектов.

После массовых протестов разработчиков по всему миру NPM восстановила модуль из резервной копии, назвав это «беспрецедентным решением». Права на модуль передали другому программисту Кэмерону Вестлейку — владельцу аналогичного модуля, но с другим названием. (Модуль Азера назывался 0.0.3, а модуль Кэмерона — 1.0.0). Интернет страдал примерно 2,5 часа, но затем был спасен.

В серии твитов СТО NPM Лори Восс отметила, что компания и сама не рада была отдать другим пользователям права на интеллектуальную собственность Кокулу, но цель оправдывает средства. Иначе сайты по всему миру продолжали бы страдать.

Итог истории таков: npm left-pad снова онлайн. Но осадок остался. Программисты все чаще используют чужой код вместо того, чтобы писать самостоятельно. Однако Азер не имеет ничего против и обещает делиться своей работой на GitHub. Но на NPM он возвращаться не планирует: «Я поступил так, не потому что я м*дак. Я люблю open source и верю, что коммьюнити однажды создаст по-настоящему свободную альтернативу NPM».

Был еще один забавный случай, куда менее трагичный. Программист писал скрипты, которые делали за него работу, варили латте и общались с женой.


Читать дальше
Twitter
Одноклассники
Мой Мир

материал с ain.ua

2

      Add

      You can create thematic collections and keep, for instance, all recipes in one place so you will never lose them.

      No images found
      Previous Next 0 / 0
      500
      • Advertisement
      • Animals
      • Architecture
      • Art
      • Auto
      • Aviation
      • Books
      • Cartoons
      • Celebrities
      • Children
      • Culture
      • Design
      • Economics
      • Education
      • Entertainment
      • Fashion
      • Fitness
      • Food
      • Gadgets
      • Games
      • Health
      • History
      • Hobby
      • Humor
      • Interior
      • Moto
      • Movies
      • Music
      • Nature
      • News
      • Photo
      • Pictures
      • Politics
      • Psychology
      • Science
      • Society
      • Sport
      • Technology
      • Travel
      • Video
      • Weapons
      • Web
      • Work
        Submit
        Valid formats are JPG, PNG, GIF.
        Not more than 5 Мb, please.
        30
        surfingbird.ru/site/
        RSS format guidelines
        500
        • Advertisement
        • Animals
        • Architecture
        • Art
        • Auto
        • Aviation
        • Books
        • Cartoons
        • Celebrities
        • Children
        • Culture
        • Design
        • Economics
        • Education
        • Entertainment
        • Fashion
        • Fitness
        • Food
        • Gadgets
        • Games
        • Health
        • History
        • Hobby
        • Humor
        • Interior
        • Moto
        • Movies
        • Music
        • Nature
        • News
        • Photo
        • Pictures
        • Politics
        • Psychology
        • Science
        • Society
        • Sport
        • Technology
        • Travel
        • Video
        • Weapons
        • Web
        • Work

          Submit

          Thank you! Wait for moderation.

          Тебе это не нравится?

          You can block the domain, tag, user or channel, and we'll stop recommend it to you. You can always unblock them in your settings.

          • AIN.UA
          • домен ain.ua

          Get a link

          Спасибо, твоя жалоба принята.

          Log on to Surfingbird

          Recover
          Sign up

          or

          Welcome to Surfingbird.com!

          You'll find thousands of interesting pages, photos, and videos inside.
          Join!

          • Personal
            recommendations

          • Stash
            interesting and useful stuff

          • Anywhere,
            anytime

          Do we already know you? Login or restore the password.

          Close

          Add to collection

             

            Facebook

            Ваш профиль на рассмотрении, обновите страницу через несколько секунд

            Facebook

            К сожалению, вы не попадаете под условия акции