Welcome, Guest: Register On Nairaland / LOGIN! / Trending / Recent / New
Stats: 3,155,518 members, 7,826,952 topics. Date: Tuesday, 14 May 2024 at 12:33 AM

How One Programmer Caused An Apocalypse On The Internet By Deleting A Piece Code - Webmasters - Nairaland

Nairaland Forum / Science/Technology / Webmasters / How One Programmer Caused An Apocalypse On The Internet By Deleting A Piece Code (806 Views)

Idle Apocalypse unlimited gems hack download Android iOS / Save Your Money On The Internet By This System / See How You Can Delete Yourself From The Internet By Clicking On A Single Button (2) (3) (4)

(1) (Reply) (Go Down)

How One Programmer Caused An Apocalypse On The Internet By Deleting A Piece Code by Spectraz: 7:29am On May 01, 2016
Some Genius Brains Still Exist On Planet Earth.........

It all began with a 28-year-old man by namein Oakland, California, he is an avid web developer and i must say, a genius if he can be able to make the internet world reverberate as it did few days ago by disrupting web development around the world after deleting 11 lines of code.

kokulu
Azer Koçulu
The story of how 28-year-old Azer Koçulu briefly broke the internet shows how writing software for the web has become dependent on a patchwork of code that itself relies on the benevolence of fellow programmers. When that system breaks down, as it did last week, the consequences can be vast and unpredictable.
“I think I have the right of deleting all my stuff,” Koçulu wrote on March 20 in an email that was later made public.
Bam!!!! And then he did it.

Let Me Tell You The Story………

Koçulu had been publishing code he wrote to npm, a popular service that’s widely used to find and install open-source software written in JavaScript. It has become an essential tool in web development, invoked billions of times a month, thanks to npm’s ease of use and its enormous library of free code packages contributed by the open-source community.
“I’m a self-taught high school graduate who learn almost everything, thanks to open source community,” Koçulu, who was born in Turkey, wrote in an email to Quartz. “I owe everything I have to the people who never gave up with open source philosophy.”

and the problem began.

One of the open-source JavaScript packages Koçulu had written was kik, which helped programmers set up templates for their projects. It wasn’t widely known, but it shared a name with Kik, the messaging app based in Ontario, Canada.

On March 11, Koçulu received an email from Bob Stratton, a patent and trademark agent who does contract work for Kik [the messaging app company].

Stratton said Kik was preparing to release its own package and asked Koçulu if he could rename his. “Can we get you to rename your kik package?” Stratton wrote.
“Sorry, I’m building an open source project with that name,” Koçulu wrote back.
The conversation quickly escalated, with Stratton threatening legal action: “We don’t mean to be a dick about it, but it’s a registered trademark in most countries around the world and if you actually release an open source project called kik, our trademark lawyers are going to be banging on your door and taking down your accounts and stuff like that — and we’d have no choice but to do all that because you have to enforce trademarks or you lose them.”
“Hahah, you’re actually being a dick,” Koçulu replied. “So, Bleep you. Don’t email me back.”

Stratton offered to pay for the name, and Koçulu suggested $30,000 “for the hassle of giving up with my pet project for bunch of corporate dicks.” now It was clear the two men weren’t going to reach an agreement.

The company called npm is based, like Koçulu, in Oakland. Though a for-profit enterprise, npm runs its eponymous registry of open-source software for free and has a mission of fostering open-source JavaScript development. The company generates revenue from private services for code that isn’t open-sourced, it is just a business model similar to GitHub.
Stratton brought Kik’s request for the name to npm, again citing the company’s trademark and potential confusion. Isaac Schlueter, the chief executive of npm, agreed to turn the name over to the company.
“In this case, we believe that most users who would come across a kik package, would reasonably expect it to be related to kik.com,” Schlueter wrote to Stratton and Koçulu on March 18. “In this context, transferring ownership of these two package names achieves that goal.”
When Koçulu and Isaac Schlueter talked “I know you for years,” Koçulu said, “and would never imagine you siding with corporate patent lawyers threatening open source contributors.”

To Koçulu, npm’s decision to transfer ownership of the kik package to Kik ran counter to the values of the community it serves. In his reply, Koçulu said he wanted all of the packages he had registered on npm taken down. “I don’t wanna be a part of NPM anymore,” he wrote. “If you don’t do it, let me know, i know how do it quickly.”

Two days after Koçulu’s last email to npm, on March 22, JavaScript programmers around the world started receiving a strange error message when they tried to run their code. The issue was severe enough to keep some developers from updating apps and services that were already running on the web. The error spit out many lines, but one stood out:



It meant that the code they were trying to run required a package called left-pad, but the npm registry didn’t have it.
Most programmers had never heard of left-pad, but now, somehow, their code couldn’t run without it. To understand how this could happen, it’s important to understand that almost all software is built on top of another software, which also depends on another software.

Loading your own app might require a certain set of packages from npm, but those packages your app requires may require their own sets of packages, and so on. That’s one reason npm has become so popular, helping to manage those dependencies by maintaining all of the packages in one, reliable place.

By early evening, developers began congregating at the GitHub repository where left-pad was maintained. Most were confused because packages don’t usually disappear. This one was particularly perplexing because it was just 11 lines of straightforward code. Here is left-pad in its entirety:



That code can be used to add characters to the beginning of a string of text, perhaps a zero to the beginning of a zip code. It’s a single-purpose function, simple enough for most programmers to write themselves. But unfortunately Lots of npm packages, however, relied on left-pad to do it for them, which is how this tiny bit of code became so important.
Some of the largest, most widely used npm packages were suddenly broken. One of the affected packages, React, is used by major websites like Facebook, which created it, and a wide variety of smaller sites like Quartz’s own Atlas.

Here is the gist…….

In the past month alone, more than a million people have downloaded React from npm. React didn’t require these 11 lines of code directly, of course. It depended on one set of packages, and each of those depended on another set, et cetera, and one of those branches eventually led to left-pad. And now, left-pad was gone. React stopped functioning properly.
Its absence was felt globally; the commenters on left-pad’s GitHub page were writing from Australia, Germany, the United States, and the Czech Republic. In Ontario, where the issue had originated in its roundabout way, programmers at Kik were ironically running into left-pad problems.

An hour after the issue was first noticed, Koçulu surfaced with a post on Medium titled, “I’ve Just Liberated My Modules.” He briefly explained the dispute with Kik and npm, and said he’d deleted his packages from npm in protest–all 273 of them. One of those—hardly the most popular or even the most important, even to Koçulu—was left-pad.
“This situation made me realize that NPM is someone’s private land where corporate is more powerful than the people, and I do open source because, Power To The People,” Koçulu wrote..............

2 Likes

Re: How One Programmer Caused An Apocalypse On The Internet By Deleting A Piece Code by finalboss1(m): 7:47am On May 01, 2016
ok
Re: How One Programmer Caused An Apocalypse On The Internet By Deleting A Piece Code by Ikwerreboy(m): 8:24am On May 01, 2016
.
Re: How One Programmer Caused An Apocalypse On The Internet By Deleting A Piece Code by marshalcarter: 8:27am On May 01, 2016
Ok
Re: How One Programmer Caused An Apocalypse On The Internet By Deleting A Piece Code by industrious: 1:25pm On May 01, 2016
Wow. Can't believe I read it all...

Quite revealing I must say smiley
Re: How One Programmer Caused An Apocalypse On The Internet By Deleting A Piece Code by tr3y(m): 2:53pm On May 01, 2016
Great piece. Heard about it few weeks back.
Re: How One Programmer Caused An Apocalypse On The Internet By Deleting A Piece Code by yomalex(m): 8:11pm On May 01, 2016
'Twas really funny saw the update from Namecheap yesterday
Re: How One Programmer Caused An Apocalypse On The Internet By Deleting A Piece Code by Spectraz: 5:45pm On Dec 18, 2017
Just stumbled on this thread again after so many months. I must say, when I reported this story I had no idea what react, npm, packages and all these terms I wrote they meant. I just had a blurred understanding of what they all stand for.

fast-forward to December 2017. I am a full-time back-end web developer. And reading the thread back again was like reading it for the first time.

lol

The story was funny though. How one line of code caused a world war Z on the internet

(1) (Reply)

A New Website Like Nairaland In Town. / Are You Pro In Blogging Or A Starter, This Thread Is For You / Now Let's Customize Blogger's Boring EU Cookies Notification

(Go Up)

Sections: politics (1) business autos (1) jobs (1) career education (1) romance computers phones travel sports fashion health
religion celebs tv-movies music-radio literature webmasters programming techmarket

Links: (1) (2) (3) (4) (5) (6) (7) (8) (9) (10)

Nairaland - Copyright © 2005 - 2024 Oluwaseun Osewa. All rights reserved. See How To Advertise. 24
Disclaimer: Every Nairaland member is solely responsible for anything that he/she posts or uploads on Nairaland.