Giám đốc Google: 'Nghề lập trình cần tự học 10 năm'
Gửi bởi hkson vào lúc 06-06-2016

Một lập trình viên giỏi không thể học kiểu "mì ăn liền" mà phải nỗ lực thực hành, phân tích, vượt qua mọi giới hạn bản thân, theo Peter Norvig.


Toàn văn

Trong một bài viết đăng trên trang cá nhân của mình, nhà khoa học máy tính, cựu nhân viên NASA, Giám đốc nghiên cứu Google - Peter Norvig cho rằng, việc nóng lòng muốn trở thành nhà lập trình sau vài tháng là ý tưởng sai lầm. Bất kỳ công việc nào cũng cần sự rèn luyện, nỗ lực không ngừng nghỉ, từ đọc sách, đi học lấy chứng chỉ đến rút kinh nghiệm trong khi làm việc, cộng tác với đồng nghiệp.

Giám đốc nghiên cứu của Google - Peter Norvig, người giúp công ty công ty thu hút nhân tài, giải quyết các vấn đề

Giám đốc nghiên cứu của Google - Peter Norvig, người giúp công ty thu hút nhân tài, giải quyết các vấn đề trí tuệ nhân tạo.

Tại sao mọi người lại học một cách vội vàng

Rảo bước quanh các cửa hàng sách, bạn dễ dàng bắt gặp những tựa sách như Tự học lập trình Java trong 7 ngày bên cạnh một dãy dài vô tận những cuốn sách khác dạy các ngôn ngữ lập trình như C, SQL, Ruby… trong vài giờ. Ông đã thử công cụ tìm kiếm nâng cao những cuốn sách có tiêu đề chứa cụm "tự dạy" (teach yourself), "học" (learn), "giờ" (hours), "ngày" (days), "kể từ năm 2000" (since 2000). 9 trong 10 kết quả đầu tiên là sách lập trình.

Điều ông rút ra là tại sao mọi người lại vội vàng đến thế khi học lập trình, hay vì lập trình là thứ dễ học hơn bất kỳ bộ môn nào trên đời. Nhà lập trình Felleisen và các cộng sự của ông cũng từng phát biểu trong cuốnHow to Design Programs (Làm sao để viết các chương trình) rằng: "Viết một chương trình dở thì dễ thôi. Ngay cả những kẻ ngốc nghếch cũng có thể làm được điều đó trong 21 ngày, thậm chí với những người rất khờ khạo".

Tự học lập trình trong 10 năm

Các nhà nghiên cứu như Bloom, Bryan & Harter, Hayes cho biết, phải mất khoảng 10 năm để thông thạo bất kỳ lĩnh vực nào từ chơi cờ, sáng tác âm nhạc, bơi lội, tennis đến nghiên cứu tâm lý thần kinh… Điều quan trọng là việc luyện tập, thực hành. Đó không đơn thuần chỉ lặp đi lặp lại một công việc đó, mà còn thử thách bản thân với những nhiệm vụ vượt ngoài khả năng hiện tại, nỗ lực, phân tích những điều vừa làm được của bản thân trong và sau khi hoàn thành rồi khắc phục những khuyết điểm. Quá trình này phải được lặp đi lặp lại mà không có một lối đi tắt nào.

"Viết một chương trình dở thì dễ thôi. Ngay cả những kẻ ngốc nghếch cũng có thể làm được điều đó trong 21 ngày".

Việc học phải được lặp đi lặp lại mà không có một lối đi tắt nào.

Từ thực tế có thể nhận thấy, không có lối đi tắt nào để đi đến thành công. Ngay cả với Mozart, người được xem là thần đồng, đã bắt đầu học nhạc từ năm lên 4 tuổi và mất 13 năm để cho ra đời tác phẩm âm nhạc cổ điển đầu tiên. Một ví dụ ở lĩnh vực khác, the Beatles trước khi có bản hit số một vào 1964 ở chương trình Ed Sullivan, cũng đã chơi nhạc trong những câu lạc bộ nhỏ ở Liverpool hay Hamburg từ năm 1957. Dù họ sớm có được sức hút lớn với khán giả thì đến tận album Sgt. Pepper's phát hành năm 1967 mới có được thành công quan trọng đầu tiên trong sự nghiệp.

Làm cách nào để trở thành một lập trình viên

Hãy yêu thích lập trình và bạn làm vì cảm thấy hào hứng. Phải chắc chắn rằng, lập trình đủ thú vị để bạn còn theo đuổi công việc đó trong 10 năm hoặc 10.000 giờ nữa.

Cách học lập trình tốt nhất chính là thực hành. Nói một cách khoa học hơn thì việc rèn luyện không khiến bạn tự động đạt đến đỉnh cao của tài năng nhưng ngay cả với những người nhiều kinh nghiệm, sự nỗ lực rèn luyện vẫn giúp cải thiện đáng kể năng lực của họ. Cách học tập hiệu quả nhất là xác định rõ khả năng hiện tại, những khó khăn của bản thân, nhận được đánh giá có ý nghĩa và tìm cơ hội làm lại, sửa sai. Những hướng dẫn trên được trích từ cuốn sách rất hữu ích - Cognition in Practice: Mind, Mathematics, and Culture in Everyday Life (Nhận thức về thực hành: Trí tuệ, Toán học và Văn hóa đời sống).

Hãy trao đổi với những lập trình viên khác, tìm hiểu thêm những chương trình khác. Điều này còn quan trọng hơn bất kỳ quyển sách hay khóa đào tạo nào.

Nếu bạn muốn, hãy dành 4 năm ở đại học (hoặc dài hơn ở những trường bậc cao). Bạn sẽ có cơ hội làm những công việc yêu cầu bằng cấp và hiểu biết chuyên sâu hơn trong một vài lĩnh vực. Nhưng nếu không thích trường học, bạn cũng có thể có ngần ấy trải nghiệm khi tự học hoặc làm việc nhưng phải thực sự tập trung. Trong bất kỳ trường hợp nào, chỉ học qua sách vở cũng không bao giờ đủ. "Chương trình giảng dạy khoa học máy tính không thể giúp bạn trở thành chuyên gia lập trình cũng như học cách sử dụng bút lông và tô màu không làm nên một họa sĩ", Eric Raymond – tác giả The New Hacker's Dictionary cho biết.

Tham gia vào các dự án với những lập trình viên khác. Bạn là người giỏi nhất trong một vài dự án nhưng cũng có thể là kém nhất trong một số khác. Nếu là người giỏi nhất, hãy thử thách khả năng làm lãnh đạo của mình. Còn ngược lại, hãy học hỏi xem người giỏi làm như thế nào và học xem họ không làm gì (vì họ muốn bạn làm những việc đó).

Trong một dự án, hãy làm việc sau người lập trình khi bạn đã tìm hiểu chương trình của họ. Hãy tìm xem làm sao để hiểu được chương trình đó, chỉnh sửa thế nào để tốt hơn. Thử nghĩ xem làm thế nào để thiết kế những chương trình giúp cho những người sau này có thể duy trì dễ dàng hơn

Học ít nhất khoảng nửa tá ngôn ngữ lập trình cơ bản thuộc nhiều nhóm chức năng khác nhau như Java, C++, Lisp,  ML, Prolog, Sisal, Clojure, Go.

Nhớ rằng "máy tính" là một phần của "khoa học máy tính". Vì vậy, nên nắm rõ thời gian để máy tính thực hiện một lệnh, lấy một từ trong bộ nhớ (có hoặc không có cache), đọc những từ liên tiếp trong ổ đĩa…

Tuân theo những quy định tiêu chuẩn của ngôn ngữ. Đó có thể đó là của ANSI C++ hoặc quy định gõ code ở nơi bạn sống, làm việc. Bạn cũng nên tìm hiểu xem người ta thích điều gì ở ngôn ngữ đó, họ cảm thấy thế nào hay vì sao họ thích nó.

Theo VnExpress.Net

chung c? gamuda, bi?t th? gamuda, li?n k? gamuda, chung c? goldseason, chung c? valencia, chung c? imperia sky garden,Imperia Sky Garden, Imperia Sky Garden 423 Minh Khai,

Bi?t th? Vinhomes RiverSide, The Manor Central Park, Ecopark tu?n chu,t?c s?a, chung c? gold season, biet thu gamuda, Bi?t th? Gamuda, bi?t th? gamuda gardens, D? n tn hong minh, cho thu ch r? gi r?, cho thu ch r?, c??i h?i, in k? y?u, in th? nh?a, My lm cm, my p cm vin, ph?c h?i tc h? t?n, t?i ?en h?c vi?n qun y, in l?ch t?t, in l?ch t?t 2017, t? ch?c s? ki?n, cho thu ch r? t?i h n?i, chung c? flc ??i m?, the golden palm l v?n l??ng, d? n the golden palm l v?n l??ng
B?ng gi Chung c? Imperia SkyGarden,Gi bn Chung c? Imperia 423 Minh Khai,Gi bn Chung c? Imperia Sky Garden,M?t b?ng Chung c? Imperia Sky Garden,M?t b?ng Chung c? Imperia Sky Garden,M?t b?ng Imperia Sky Garden 423 Minh Khai,Ti?n ?? thanh ton c?n h? Imperia Sky Garden,Ti?n ?? thanh ton chung c? Imperia Sky Garden,Ti?n ?? thanh ton Imperia Sky GardenKhai,Ti?n ch Chung c? Imperia Sky Garden,Ti?n ch d? n Imperia Sky Garden,Ti?n ch Imperia Sky Garden,Thng tin chung c? Imperia Sky Garden,T?ng quan chung c? Imperia Sky Garden,T?ng quan d? n Imperia Sky Garden,V? tr Chung c? Imperia Minh Khai,V? tr Chung c? Imperia Sky Garden,V? tr Imperia Sky Garden
bn bi?t th? ??n l?p gamuda,bi?t th? ??n l?p gamuda,gi bi?t th? ??n l?p gamuda,bn bi?t th? song l?p gamuda,bi?t th? song l?p gamuda,bi?t th? gamuda city,gamuda garden,li?n k? gamuda giai ?o?n 2,bi?t th? li?n k? gamuda,li?n k? gamda,lien ke gamuda,shophouse gamuda
t? ch?c s? ki?n,thu bn gh?,thu gian hng,thu nh b?t,thu phng b?t,thu nh b?t ,t? ch?c ?m c??i tr?n gi,t? ch?c h?i ngh?,t? ch?c l? h?i,t? ch?c khai tr??ng,t? ch?c l? kh?i cng,T? ch?c thnh l?p cng ty,T? ch?c h?i ngh? h?i th?o,t? ch?c s? ki?n qu?ng co,t? ch?c s? ki?n cng ty,t? ch?c s? ki?n thi?u nhi,t? ch?c ?m c??i
Bi?t Th? Gamuda Gardens,Bi?t Th? Gamuda Gardens,Chung C? 317 Tr??ng Chinh,Chung C? 36 Hong C?u D. Le Pont Dor,Chung C? C3 L V?n L??ng,Chung C? Capital Garden 102 Tr??ng Chinh,Chung C? Dolphin Plaza M? ?nh,Chung C? D. PALAIS DE LOUIS,Chung C? D??ng N?i Xun Mai Sparks Tower,Chung C? Ecolife Capitol L V?n L??ng,Chung C? Ecolife Capitol L V?n L??ng,Chung C? Gamuda Gardens,Chung C? Goldmark City 136 H? Tng M?u,chung c? gold season 47 nguy?n tun,chung c? gold season,Chung C? GoldSeason 47 Nguy?n Tun,Chung C? GoldSilk Complex,Chung C? H?i ??ng City HD Mon City,CHUNG C? HA BNH GREEN CITY,Chung C? Hoa?ng Tha?nh Tower,Chung C? Home City Trung Knh,Chung C? Imperial Plaza 360 Gi?i Phng,Chung C? Imperial Plaza 360 Gi?i Phng,Chung C? Mandarin Garden,Chung C? MBLand 219 Trung Knh,Chung C? Modern Interior 41 L V?n L??ng,Chung C? Mulberry Lane,Chung C? Nam ??ngTower Sunrise Tower 187 Ty S?n,Chung C? Park Hill Times City,Chung C? Seasons Avenue,Chung C? Sky City 88 Lng H?,Chung C? Th?ch Bn ,Chung C? The Artemis,Chung C? The Legend Tower 109 Nguy?n Tun,Chung C? The Two Residence,Chung C? The Two Residence,Chung C? Times City,Chung C? Valencia Garden,Chung C? Vinhomes Nguy?n Ch Thanh,Khu ? Th? The Manor Central Park,Khu ? Th? The Manor Central Park,Ti?u Khu PARK VIEW RESIDENCE,chung c? HDI sunrise,vinhomes dragon bay H? Long,vinhomes dragon bay,VINHOMES GARDENIA C?U DI?N,D? n Vinhomes Dragon Bay H? Long, Imperia Sky Garden, Chung c? The Golden Palm L V?n L??ng, d? n tn hong minh tr?n duy h?ng, chung c? riverside garden 349 v? tng phan, chung c? the link ciputra
D? n Bi?t th? bi?n D? n Condotel D? n Ecopark Gamuda Gardens Chung c? Paragon Tower Ph?m Hng D? n Parkcity Vinhomes Riverside Chung c? Ecogreen city D? n Parkhill times city Chugn c? fivestar kimgiang
Chung c? central point Chung c? CT36 ??nh cng Chung c? Athena Complex 379 Bi?t th? d??ng n?i Chung c? Times City Chung c? Vinhomes Nguy?n Ch Thanh Chung c? Home City Trung Knh Chung c? The Golden An Khnh Chung c? Tabudec Plaza Chung c? Sapphire Palace Chung c? Star Tower 283 Kh??ng Trung Chung C? CT3 C? Nhu? Chung c? Vinhomes Arcadia C?u Di?n Chung c? 36 Ph?m Hng Chung c? Capital Garden D? n Xun Ph??ng Viglacera Chung c? Golden Palace L V?n L??ng Chung c? L?c H?ng Lotus Chung c? Five Star Garden Chung c? Sun Square Chung c? Green Pearl 378 Minh Khai Chung c? Diamond Blue 69 Tri?u Khc chung c? Vinhomes Tr?n Duy H?ng Chung c? Vinhomes tr?n Duy h?ng Chung c? Th?ng Long Number One Bi?t th? Giao L?u
bi?t th? li?n k? h n?i, ?nh gi d? n b?t ??ng s?n h n?i gamuda land bo nh ??t b?t ??ng s?n g5 tin t?c b?t ??ng s?n Bi?t th? Vinpearl
chung c? ciputra ciputra chung c? the link 345 ciputra v? tr chung c? the link ciputra ti?n ch chung c? the link ciputra ti?n ch chung c? ciputra m?t b?ng chung c? the link cuputra m?t b?ng c?n h? the link ciputra b?ng gi chung c? ciputra gi bn chung c? the link ciputra ti?n ?? thanh ton the link ciputra bi?t th? ciputra bi?t th? ciputra h n?i
vinhomes th?ng long d? n vinhomes th?ng long v? tr vinhomes th?ng long ti?n ch vinhomes th?ng long m?t b?ng thi?t k? vinhomes th?ng long ti?n ?? vinhomes th?ng long b?ng gi vinhomes th?ng long ti?n ?? thanh ton vinhomes th?ng long n?i th?t vinhomes th?ng long bi?t th? long h?ng bi?t th? long khnh bi?t th? long ph bi?t th? long c?nh ty bi?t th? long c?nh ?ng
bi?t th? d??ng n?i t?ng quan bi?t th? d??ng n?i v? tr bi?t th? d??ng n?i ti?n ch bi?t th? d??ng n?i m?t b?ng bi?t th? d??ng n?i thi?t k? bi?t th? d??ng n?i b?ng gi bi?t th? d??ng n?i n?i th?t bi?t th? d??ng n?i bi?t th? d??ng n?i gi bn bi?t th? d??ng n?i ti?n ?? bi?t th? d??ng n?i v? tr bi?t th? d??ng n?i bi?t th? d??ng n?i
vinhomes riverside v? tr bi?t th? vinhomes riverside ti?n ch bi?t th? vinhomes riverside m?t b?ng bi?t th? vinhomes riverside b?ng gi bi?t th? vinhomes riverside ti?n ?? thanh ton bi?t th? vinhomes riverside bi?t th? vinhomes riverside long bin bi?t th? hoa anh ?o vinhomes riverside bi?t th? hoa b?ng l?ng vinhomes riverside bi?t th? hoa s?a vinhomes riverside bi?t th? vinhomes riverside
chung c? royal park l v?n thim chung c? the golden palm imperia sky garden bi?t th? gamuda chung c? d.le roi soleil D.Le Roi Soleil chung c? qu?ng an ty h?
Chung c? An Bnh City T?ng quan d? n chung c? An Bnh City V? tr chung c? An Bnh City Ti?n ch chung c? An Bnh City M?t b?ng chung c? An Bnh City N?i th?t chung c? An Bnh City Ti?n ?? thanh ton chung c? An Bnh City B?ng gi chung c? An Bnh City
Chung c? Anland T?ng quan d? n chung c? Anland Ti?n ch chung c? Anland V? tr chung c? Anland Nam C??ng Ti?n ?? d? n chung c? Anland Gi bn chung c? Anland

(From: http://www.husc.edu.vn/news.php?readmore=3006)