LogoDuyệtSr. Data Engineer
HomeAboutPhotosInsightsCV

Footer

Logo

Resources

  • Rust Tiếng Việt
  • /archives
  • /series
  • /tags
  • Status

me@duyet.net

  • About
  • LinkedIn
  • Resume
  • Projects

© 2026 duyet.net | Sr. Data Engineer | 2026-02-27

How one developer just broke Node, Babel and thousands of projects in 11 lines of JavaScript

Note: This post is over 10 years old. The information may be outdated.

Một lập trình viên vừa gây lỗi hàng loạt cho Node, Babel và hàng nghìn projects khác. Chỉ với 11 dòng Javascript.

Một vụ lớn trong giới Nodejs. Một lập trình viên tên là Koçulu sở hữu package trên npm là Kik. Mới vừa rồi xuất hiện 1 cty cũng tên là kik, người đại diện của kik yêu cầu Koçulu đổi tên kik, anh này không chịu. Sau đó Kik nhờ luật sư can thiệp với Npm Admin.

Koçulu bất mãn với quyết định của npm và quyết định gỡ toàn bộ 250 package của mình, không may trong đó có 1 package left-pad, chỉ có 11 dòng Javascript (mã nguồn bên dưới), có chức năng thêm vào các khoảng trắng bên trái 1 chuỗi. Và có hàng nghìn project lớn khác (trong đó có Node, Babel, ...) sử dụng lại Package này.

Với việc left-pad bị gỡ trên NPM, hàng nghìn project đó sẽ gặp lỗi khi cài đặt dependency. left-pad đã được tải xuống 2,486,696 lần trong tháng vừa qua.

Hiện mọi người vẫn có thể cài đặt các package đã bị gỡ bỏ này trực tiếp thông qua Github.

module.exports = leftpad;

function leftpad (str, len, ch) {
  str = String(str);

  var i = -1;

  if (!ch && ch !== 0) ch = ' ';

  len = len - str.length;

  while (++i < len) {
    str = ch + str;
  }

  return str;
}

Tham khảo

  • How one developer just broke Node, Babel and thousands of projects in 11 lines of JavaScript
  • A discussion about the breaking of the Internet | Medium
  • I’ve Just Liberated My Modules | Medium
  • left-pad npm | Twitter Search
Mar 26, 2016·10 years ago
|News|
Node.jsRead
|Edit|

Related Posts

Tối ưu hóa Javascript với Google Closure Compiler

Closure Compiler là 1 dự án của Google giúp Javascript tải và chạy nhanh hơn. Không phải là biên dịch từ Javascript sang mã máy, mà Closure biên dịch từ Javascript sang better-Javascript. Tức là tự động viết lại Javascript sao cho tối ưu hóa nhất mà kết quả không thay đổi.

Sep 14, 2016·9 years ago
Read more

Thuyết âm mưu về lý do con người thích mèo

Con người có tự do lựa chọn hay chúng ta chỉ là những con rối bị ký sinh trùng giật dây?

Aug 27, 2016·10 years ago
Read more

Sự cố Vietcombank, một góc nhìn kỹ thuật

Bài viết gốc đăng tại VnSecurity

Aug 18, 2016·10 years ago
Read more

Tiến sĩ là gì?

Tiến sĩ là gì? Người có kiến thức như thế nào thì đặt tới trình độ Tiến sĩ (Ph.D)?

May 7, 2016·10 years ago
Read more
On this page
  • Tham khảo
On this page
  • Tham khảo