VietTechiesHIỂU CÔNG NGHỆ. MỞ GÓC NHÌN.
☰ Chuyên mục

Java từng được xây cho TV tương tác. Dự án thất bại — Java thì sống tiếp.

06/10/2026 · VietTechies · Biên tập

Nhà khoa học máy tính James Gosling tại một buổi gặp SVLUG năm 2008.


Java không khởi đầu như một ngôn ngữ dành cho Web. Nó bắt đầu bên trong một dự án về thiết bị tiêu dùng thông minh và truyền hình tương tác — một hướng kinh doanh cuối cùng không thành công.

Đầu thập niên 1990, James Gosling cùng một nhóm nhỏ tại Sun Microsystems bắt đầu dự án sau này được gọi là Green Project. Họ cố hình dung “làn sóng điện toán tiếp theo”: TV, set-top box, bộ điều khiển cầm tay, thiết bị gia dụng và những sản phẩm có thể lập trình, kết nối mạng.

Gosling tạo ra một ngôn ngữ cho thế giới đó.

Ông đặt tên nó là Oak.

Nhóm xây một prototype ấn tượng mang tên Star-7 — thiết bị điều khiển cảm ứng cầm tay có thể điều khiển TV và những thiết bị khác. Về kỹ thuật, sản phẩm đủ tốt để minh họa một tương lai trông khá giống hiện tại.

Về thương mại, nó không đi tới đâu.

Ý tưởng sản phẩm đầu tiên thất bại, nhưng kiến trúc phía dưới vẫn sống

Phần quan trọng nhất của Oak không phải thiết bị bao quanh nó.

Nhóm phải giải một bài toán khó hơn: các hãng điện tử tiêu dùng dùng đủ loại processor và phần cứng khác nhau. Một ngôn ngữ gắn chặt vào một máy cụ thể sẽ rất bất tiện.

Vì vậy, khả năng chạy độc lập nền tảng trở thành một nguyên tắc ngay từ đầu.

Thay vì biên dịch trực tiếp cho một bộ xử lý cụ thể, chương trình Oak có thể nhắm tới máy ảo. Cùng một chương trình có thể chạy trên nhiều thiết bị, miễn mỗi thiết bị có bản triển khai máy ảo ấy.

Thiết kế này được tạo ra cho một thị trường cuối cùng không phải thị trường Java chinh phục.

Nhưng constraint đó lại có giá trị hơn sản phẩm ban đầu.

Sun cố biến prototype thành hoạt động kinh doanh

Sau khi Green Project kết thúc, Sun lập FirstPerson để tìm đường thương mại hóa.

Truyền hình tương tác trông rất hứa hẹn. Các công ty truyền hình cáp hình dung set-top box có thể đưa dịch vụ số phong phú hơn vào gia đình.

Nhóm thử hướng đó.

Nó không trở thành hoạt động kinh doanh họ kỳ vọng.

Nếu đây là postmortem thông thường, câu chuyện có thể dừng ở đây: công nghệ tốt, sai thị trường, đóng dự án.

Nhưng ngôn ngữ vẫn giữ những đặc tính hữu ích. Nó được thiết kế cho mạng, có thể chạy trên nhiều loại phần cứng, quản lý bộ nhớ an toàn hơn C/C++, và phù hợp với phần mềm được tải động thay vì cài cố định trên một máy.

Rồi Web bùng nổ.

Web trông giống đúng bài toán Oak vô tình được xây để giải

Web thời kỳ đầu chủ yếu là tài liệu tĩnh. Browser đang lan nhanh, nhưng trải nghiệm còn hạn chế.

Nhóm Oak nhận ra những đặc tính cần cho phần mềm chạy trên TV và thiết bị gia dụng cũng rất hữu ích cho phần mềm đi qua Internet.

Một chương trình tải từ server có thể chạy bên trong browser trên nhiều loại máy tính.

Oak được đổi tên thành Java.

Sun tái định vị nó quanh Web. Netscape đồng ý hỗ trợ Java trong trình duyệt. Công nghệ từng được xây cho điện tử tiêu dùng bỗng có kênh phân phối lớn hơn rất nhiều.

Hướng sản phẩm thất bại đã để lại phần lõi kỹ thuật có thể tái sử dụng.

Bài học không phải “thất bại lúc nào cũng dẫn tới thứ tốt hơn”

Nói vậy sẽ quá đẹp.

Phần lớn sản phẩm thất bại đơn giản là thất bại.

Bài học hữu ích hơn nằm ở việc tách giả thuyết thị trường khỏi năng lực kỹ thuật được xây trong lúc kiểm chứng giả thuyết đó.

Giả thuyết thị trường của Green Project là thiết bị tiêu dùng có thể lập trình và truyền hình tương tác sẽ tạo ra cơ hội lớn cho Sun.

Giả thuyết ấy không trở thành hoạt động kinh doanh.

Nhưng năng lực bên dưới — code chạy được trên nhiều nền tảng nhờ môi trường máy ảo — vẫn có giá trị khi bối cảnh thay đổi.

Nhóm có thể pivot vì công nghệ không bị đồng nhất hoàn toàn với mô hình kinh doanh ban đầu.

Team thường vứt bỏ nhầm thứ

Khi dự án thất bại, công ty thường mắc một trong hai lỗi.

Lỗi thứ nhất là bám víu: tiếp tục đẩy cùng một sản phẩm vì đã chi quá nhiều.

Lỗi thứ hai là phủ định toàn bộ: giết tất cả chỉ vì kế hoạch ban đầu không hiệu quả.

Lịch sử Java gợi ra câu hỏi thứ ba.

Chúng ta đã xây được thứ gì vẫn hữu ích dù khách hàng, kênh phân phối hoặc loại sản phẩm thay đổi?

Có thể đó là một algorithm.

Một data pipeline.

Một tool nội bộ mà team giờ không thể thiếu.

Một giao thức, model, workflow hoặc ràng buộc thiết kế bỗng quan trọng hơn ở nơi khác.

Một sản phẩm thất bại vẫn có thể chứa thành phần nền tảng thành công.

Pivot tốt thường giữ lại lời giải cho ràng buộc khó nhất

Java không thành công vì nhóm xóa sạch mọi thứ học được từ dự án thiết bị tiêu dùng.

Nó thành công một phần vì một ràng buộc từ dự án đó — phần cứng ở khắp nơi khác nhau — lại càng quan trọng trên Web.

Hardware thay đổi. Kênh phân phối thay đổi. Khách hàng thay đổi.

Bài toán chạy trên nhiều nền tảng vẫn còn.

Đó là cách hữu ích để đánh giá một pivot: đừng chỉ hỏi phải bỏ gì.

Hãy hỏi bài toán nào mình đã giải đủ sâu đến mức một thị trường khác có thể đang cần chính lời giải đó.

Ngôi nhà đầu tiên của Java không trở thành ngôi nhà thật sự của nó.

Nhưng nền tảng kỹ thuật được xây cho ngôi nhà đầu tiên sống đủ lâu để gặp Web.

Nếu sản phẩm hiện tại của bạn thất bại vào ngày mai, phần công nghệ nào vẫn đáng để giữ lại?

Đọc bằng ngôn ngữ khác: English · Español · Deutsch · Français · Português (Brasil) · Tiếng Việt

Nguồn