Cho đến thời điểm hiện tại thì gõ phím (đánh máy) vẫn là cách hiệu quả nhất để giao tiếp với máy tính và đồng thời là kỹ năng cơ bản nhất của lập trình viên. Tuy nhiên nhiều người trong số chúng ta không hề coi trọng cách gõ “chuẩn” mà lại thích gõ một cách… vô tư (thích thế nào gõ thế nấy).

Trong khi đó ở nước ngoài thì typing đã được coi trọng từ lâu, bộ môn khoa học máy tính (computer science) có riêng một khóa dạy gõ phím đó là Typing 101. Nó được nhắc đến trong blog của Jeff Atwood (nhà đồng sáng lập StackOverflow) như một khóa học “quan trọng nhất”:

I was trying to figure out which is the most important computer science course a CS student could ever take, and eventually realized it’s Typing 101.

The really great engineers I know, the ones who build great things, they can type.

Nhân ngày cuối tuần rảnh rỗi, tôi xin chia sẻ kinh nghiệm cũng như suy nghĩ của mình về gõ phím – việc phải làm hằng ngày của những lập trình viên.

Sơ lược về bàn phím

Trước tiên hãy điểm qua một chút về lịch sử của máy đánh chữ và sự ra đời của bàn phím quay tay, à nhầm QWERTY.

Bàn phím QWERTY được phát minh không phải để cho việc gõ dễ dàng hơn mà để khắc phục vấn đề kẹt phím.

Phiên bản thương mại đầu tiên của máy đánh chữ được phát mình năm 1866 bởi một người Mỹ tên là Christopher Sholes. Cỗ máy này dùng cánh tay đòn cơ khí để in mỗi chữ cái một lần nhấn trên giấy cuộn. Thiết kế này gặp nhiều vấn đề trong đó rắc rối nhất là việc kẹt phím. Việc này dẫn đến phát minh của bàn phím “QWERTY” bởi James Densmore, và nó trở thành chuẩn layout bàn phím cho tới tận bây giờ.

Ngoài QWERTY thì còn có một số layout bàn phím khác được phát minh ra để phù hợp với từng bảng chữ cái như QWERTZ hay AZERTY.

Bàn phím QWERTY trên máy đánh chữ cơ khí

Năm 1902, công ty Blickensderfer Manufacturing sản xuất máy đánh chữ điện tử đầu tiên nhưng không tạo nên sự thay đổi nhiều cho đến khi máy tính cá nhân (PC) bắt đầu “thống trị” thế giới.

Vào những năm cuối của thập niên 70, các công ty như Apple và IBM nhận thấy sự cần thiết của bàn phím máy tính và bắt đầu cho ra những sản phẩm đầu tiên. Sự thành công của PC khiến mọi người chuyển sang gõ phím trên máy tính và ngày nay nó đã trở nên cực kỳ phổ biến, thật khó để tìm thấy một công việc mà không liên quan đến nhập liệu.

WPM (Word Per Minute) là thước đo phổ biến nhất để đo tốc độ gõ. Tốc độ gõ trung bình trên thế giới là 30 WPM cho người không chuyên và 50-80 WPM cho người chuyên nghành. 220 WPM được coi là giới hạn tốc độ gõ của con người. Có rất nhiều tranh cãi xung quanh việc ai là người gõ nhanh nhất thế giới, năm 1946 kỷ lục gõ nhanh nhất thế giới được ghi nhận bởi Stella Pajunas-Garnandat với 216 WPM.

Kỹ năng nhập liệu từng một thời được đưa vào làm điều kiện để tuyển nhân viên văn phòng, đặc biệt là vị trí quản trị. Thời đó các công ty có nhiều bài test nhập liệu khác nhau tùy yêu cầu của từng vị trí. Ngày nay các bài kiểm tra đánh máy không còn quá khắt khe nữa mà chỉ còn tồn tại ở một số công việc đặc thù.

Lập trình viên có gõ nhiều không?

Trở lại với chủ đề lập trình viên, trên phim ảnh thì họ là những anh chàng đeo kính có mái tóc bù xù, ngồi nhìn chằm chằm vào máy tính với đôi mắt thâm quầng và gõ lạch cạch suốt hàng giờ liền. Sự thật thì khác, lập trình viên đa số rất sạch sẽ gọn gàng, họ không gõ phím liên tục như bạn nghĩ mà hoạt động chính của họ là ngồi thiền (suy nghĩ).

Đa số thời gian của lập trình viên là dành để suy nghĩ

Họ code ít không phải do lười mà vì nghành lập trình quan trọng chất lượng hơn số lượng, năng suất của lập trình viên được đánh giá dựa trên số task hoàn thànhchất lượng sản phẩm chứ không phải trên số dòng code. Lập trình viên càng giỏi thì code càng ngắn gọn. Khi đã đạt tới tầm Guru thì không cần code mà chỉ cần ngồi bốc phét thôi mà vẫn xong việc :))

Đùa vậy thôi, tôi rất ghét kiểu lập trình viên code bằng mồm, lúc nào cũng lý thuyết kiểu phải suy nghĩ thế này thế kia, code phải biết mở rộng ABC XYZ gì đó nhưng bản thân lại méo có tí code nào để show ra cho người ta. Khi bạn nói như thế ít nhất hãy đưa ra code ví dụ hoặc show cái tài khoản github của bạn cho tôi thấy. Như Linus Torvald từng nói:

Talk is cheap. Show me the code.

Ngược lại, nếu bạn thấy lập trình viên nào mà ngồi gõ lạch cạch liên tục thì nó không phải đang code đâu mà là đang ngồi chat đấy. Nhưng đừng vội hiểu nhầm, bởi vì công việc lập trình không chỉ có code. Chúng tôi còn phải trao đổi với đồng nghiệp, viết tài liệu, soạn email, search Google… Tuy code ít nhưng việc gõ phím vẫn chiếm kha khá thời gian làm việc.

Lợi ích của việc gõ 10 ngón

Touch-typing là thuật ngữ chỉ việc dùng tất cả các ngón tay để gõ phím mà không cần nhìn, đây là một kỹ năng có thể đạt được qua việc luyện tập một cách bài bản. Ở bài viết này tôi gọi là gõ 10 ngón cho nó thân thiện.

Bản thân tôi thấy việc gõ 10 ngón hay không cũng chẳng ảnh hưởng nhiều đến việc code, hơn nữa gõ 10 ngón chưa chắc đã gõ nhanh hơn gõ tự do.

Tuy vậy việc gõ 10 ngón mang lại rất nhiều lợi ích khác (ngoài việc gõ nhanh). Dưới đây tôi sẽ liệt kê những lợi ích đó với hi vọng mọi người có thêm động lực để luyện tập kỹ năng này.

1. Giảm stress

Nếu coi việc ngồi máy tính liên tục nhiều tiếng mỗi ngày là một cực hình thì nhập liệu nhiều tiếng mỗi ngày là một cách “tra tấn”. Việc gõ 10 ngón giúp bạn hoàn thành công việc trôi chảy hơn và rút bớt thời gian ngồi máy tính hơn, bạn sẽ có thêm thời gian để nghỉ ngơi.

Tôi không cam đoan rằng việc gõ 10 ngón sẽ giúp bạn gõ nhanh hơn các cao thủ gõ tự do, nhưng tôi chắc chắn rằng gõ 10 ngón sẽ ít lỗi hơn nhiều so với gõ tự do. Bạn sẽ tiết kiệm được nhiều thời gian hơn nhờ mắc ít lỗi hơn.

Việc thoải mái thong dong nhìn màn hình máy tính và gõ cũng giúp đầu óc bạn trở nên thư thái.

2. Tăng năng suất làm việc

Gõ 10 ngón còn giúp bạn tập trung hơn trong công việc. Theo nghiên cứu của “chuyên gia” thì tốc độ gõ khoảng 60WPM (Word Per Minute) trở lên mới bắt kịp suy nghĩ của con người. Hãy tưởng tượng bạn đang code như một… vị thần thì gõ sai chính tả, vậy là thay vì bắt kịp những ý tưởng lóe lên trong đầu thì bạn phải ngồi sửa lỗi, khi sửa xong thì quên luôn nãy vừa nghĩ gì rồi.

Như vậy để tránh mất tập trung thì ta nên gõ nhanh và ít lỗi hơn, và gõ 10 ngón giúp bạn cải thiện những vấn đề đó. Thậm chí sẽ giúp bạn đạt đến cảnh giới nghĩ gì gõ nấy, điều này giúp ích rất nhiều cho tech writter nói riêng content creator nói chung.

3. Có lợi cho sức khỏe

Bạn đã biết đến hội chứng ống cổ tay? Lập trình viên chúng ta rơi vào nhóm nguy cơ đó.

Việc ngồi sai tư thế, cổ tay di chuyển nhiều, cổ tay cong chèn ép lên các dây thần kinh và việc gật đầu xuống để nhìn bàn phím tạo nên những tổn thương nhỏ mỗi ngày. Những tổn thương đó tích tụ lại vào tạo nên nhiều bệnh.

Một trong những cách để phòng tránh bệnh là gõ 10 ngón và ngồi đúng tư thế. Việc trang bị cho mình đệm lót cổ tay cũng có lợi rất nhiều cho sức khỏe về lâu về dài.

Cuối cùng, gõ 10 ngón cũng nói lên một phần độ chuyên nghiệp của bạn.

Kết luận

Để đưa ra được nhận xét chính xác thì không chỉ lấy ý kiến của bản thân mà phải xem lập trình viên trên thế giới họ nghĩ thế nào về vấn đề này nữa. Khi tìm kiếm với từ khóa “is touch-typing important to a programmer” thì tôi chọn lọc được một số kết quả sau:

Ban đầu tôi định dịch tất cả các nguồn trên nhưng do quá lười và bạn đọc có thể tự đọc được nên tôi chỉ tổng hợp lại như sau:

  1. Lập trình viên không chỉ là người đánh máy mà còn là người giải quyết các vấn đề.
  2. Bạn vẫn có thể gõ nhanh mà không cần gõ 10 ngón, tuy nhiên không nên nhìn bàn phím khi gõ. Tốc độ gõ của lập trình viên cần ít nhất 50-60 WPM.
  3. Gõ văn bản nhanh không có nghĩa là bạn sẽ code nhanh.
  4. Việc gõ nhanh không quan trọng bằng gõ chính xác.
  5. Việc gõ đúng cách tốt cho sức khỏe tương đương như việc ngồi đúng tư thế.
  6. Gõ 10 ngón giữ cho bạn tập trung hơn vào công việc.
  7. Nhiều người biết gõ 10 ngón xong mới thấy được lợi ích rõ rệt của nó.

Ngoài ra thì việc học thuộc các phím tắt hay đầu tư bàn phím cơ cũng có lợi rất nhiều cho công việc và sức khỏe của bạn đấy.

Nếu bạn quan tâm đến việc luyện kỹ năng gõ 10 ngón thì hãy đón đọc bài viết tiếp theo về chủ đề “kinh nghiệm luyện tập gõ 10 ngón” của tôi nhé. Chúc bạn đọc một ngày cuối tuần vui vẻ 😁