Những ngày nghỉ lễ rảnh rỗi, tôi nảy sinh ra một ý tưởng chắc chắn nhiều coder khác đã từng nghĩ đến: cài Linux (Ubuntu) và tạo ra một không giản "dev chuyên sâu" trên máy tính cá nhân của mình. Như bạn có lẽ đã biết, Linux là hệ điều hành số 1 cho môi trường server, đến mức mà Microsoft từng gọi Linux là "ung nhọt" nay cũng phải quay ra hỗ trợ Linux ngày một tốt hơn. Có thể nói rằng dùng Linux cho việc phát triển chắc chắn sẽ "sướng" hơn là dùng Windows...
Ý tưởng là vậy, nhưng đến khi thực hiện thì tôi lại gặp phải một vấn đề cực kỳ khó chịu: một ngày, Ubuntu của tôi dở chứng và không chịu nhận màn hình thứ 2 nữa. Làm việc trong lĩnh vực phần mềm, tôi đã quen với việc có nhiều diện tích màn hình để mở nhiều ứng dụng cùng lúc.
Niềm bất ngờ: Windows
OK, nếu đã là "dân công nghệ" thì phải biết giải quyết vấn đề. Tôi bắt đầu làm điều mà bất kỳ một người nào khác cũng sẽ làm: Google. Sau 1 ngày tìm kiếm, biết nhiều hơn về Ubuntu, về driver, cuối cùng tôi cũng đã giải quyết được.
Thế rồi, tôi bật Windows trở lại. Màn hình ngoài lại hiện lên một cách hoàn toàn tự nhiên, không cần phải Google, phải gõ bất cứ câu lệnh nào cả. 3 năm qua, trên chính chiếc laptop và chiếc màn hình này, tôi đã sử dụng multi-screen một cách bình thường, ổn định và dễ dàng.
Tôi biết rất nhiều người đọc đến đây sẽ đi đến một nhận định mà chính bản thân tôi đôi lúc cũng sẽ nói ra: có lẽ là vì dùng chưa quen, vì chưa "học" đủ sâu... Trong những tình huống giải quyết vấn đề khác, tôi sẽ công nhận khiếm khuyết đó. Nhưng trong tình huống này, có một thực tế tôi cho rằng không thể bỏ qua:
Vì sử dụng một giải pháp được cho là "sành công nghệ" hơn, tôi đã gặp phải một vấn đề có thể tránh được nếu sử dụng những giải pháp bình thường. 1 ngày dành ra để giải quyết một vấn đề mà Windows tuyệt nhiên không gặp phải, lẽ ra tôi đã có thể dành cho những thứ thực sự có ích.
Để đọc sách, hay để code chẳng hạn.
Thực sự có giá trị
Sau một thời gian tìm hiểu, tôi nhận ra vấn đề của mình là bởi, tình trạng hỗ trợ của driver NVIDIA Optimus trên Ubuntu nói chung khá kém. Nếu cài đặt môi trường phát triển trên Windows, tôi đã có thể tránh được những vấn đề không phải lỗi của mình, và cũng không có ích cho công việc. Ngày nay, deploy trên cloud càng ngày càng nhiều, Microsoft hỗ trợ Linux cũng tốt, chưa kể deploy lại là việc của team khác (devOps).
Bù lại, cài Ubuntu thì sẽ đem đến cảm xúc "sành công nghệ" hơn: đó là một hệ điều hành có mức độ tùy biến cao hơn, đòi hỏi hiểu biết cao hơn, và bởi thế, cũng sẽ đem lại cảm xúc thỏa mãn hơn khi sử dụng.
...Nhưng đến một lúc nào đó, tôi cũng phải nhận ra rằng, có thể mình đã mải mê chạy theo một loại cảm xúc không thực sự có ích mà bỏ quên những thứ mình thực sự cần làm. Hiểu Linux dĩ nhiên là tốt, nhưng rước vào mình những vấn đề chưa cần thiết lại là chuyện khác. Dùng Windows, tôi vẫn có thể dựng vẫn có thể học code Java một cách bình thường.
Thực tế trước tiên
Và điều đó đưa tôi đến một cái kết quan trọng: cuối cùng mọi loại công nghệ đều cần phải ưu tiên 2 chữ "thực tế" trước tiên. Yêu cầu của bạn là gì, và liệu bạn có vì tâm lý "sành công nghệ" mà lựa chọn một giải pháp không thực sự có ích cho nhu cầu đó hay không? Đó là những câu hỏi mà tôi sẽ luôn ghi nhớ trước khi đặt mình vào tình huống tương tự.
Theo GenK