Các lập trình viên đọc sách liên quan đến lập trình vẫn còn hiếm? [đóng cửa]


21

Cả hai trong Code Complete của Steve McConnell và Lập trình viên thực dụng của Andrew Hunt & David Thomas, họ cho rằng hầu hết các lập trình viên không đọc các cuốn sách liên quan đến lập trình như một thói quen, hoặc ít nhất là không thường xuyên. Điều này vẫn còn giữ? Có phải các lập trình viên đọc những cuốn sách như vậy vẫn còn hiếm?

Tôi phải thừa nhận rằng chỉ gần đây tôi mới bắt đầu đọc (và bây giờ tôi không thể dừng lại; nó đang đốt cháy toàn bộ trong ví của tôi!). Trước khi tôi thực sự chống lại nó và lập luận rằng viết chương trình tốt hơn là lãng phí thời gian để đọc về nó. Bây giờ tôi nhận ra rằng kết quả tốt nhất, đối với tôi ít nhất, là làm cả hai.

EDIT: Tôi thực sự có nghĩa là bất kỳ loại sách nào trên đường này hay cách khác có liên quan đến lập trình; có thể là trên một ngôn ngữ, công nghệ, mô hình, mô hình cụ thể - bất cứ điều gì miễn là nó có thể mang lại lợi ích cho bạn như một lập trình viên. Tôi chỉ nói đến Code CompleteLập trình viên thực dụng bởi vì đó là nơi tôi đọc mà các lập trình viên thường không đọc những cuốn sách như vậy. Nó sẽ có vẻ bị xáo trộn nếu tiêu đề chỉ đọc "Các lập trình viên đọc sách có còn hiếm không?"

Câu trả lời:


19

Mọi người dường như đang trả lời câu hỏi này một cách cá nhân, như trong "Tôi có đọc những thứ tương tự." Tuy nhiên, là một người đi chơi tại trang web này, bạn đã bị cắt giảm so với IMO lập trình viên "trung bình" của bạn. Vì vậy, điều này xiên các con số đáng kể. Để trả lời câu hỏi trực tiếp: có, lập trình viên đọc sách là một giống hiếm. Tôi đã làm việc với hàng tá lập trình viên và chỉ biết hai hoặc ba người sẽ chọn một cuốn sách để giải quyết vấn đề. Hầu hết trong số họ sẽ tìm kiếm Google cho một chương trình cụ thể, hoặc chỉ nhìn chằm chằm vào màn hình với hy vọng có cảm hứng thiêng liêng. :-)

Và những cuốn sách "lý thuyết" như Lập trình viên thực dụng và Hoàn thành mã thậm chí còn hiếm khi được đọc bởi các lập trình viên trung bình. Nếu một lập trình viên sẽ đọc một cuốn sách, nhiều khả năng đó là một cuốn sách kỹ thuật về ngôn ngữ, khuôn khổ hoặc công nghệ cụ thể mà họ đang làm việc. Những cuốn sách "mềm" thậm chí không có trên hầu hết các radar lập trình viên.


6

Tôi không thể ngừng phát triển danh sách mong muốn trên Amazon của mình. Cuốn sách gần đây nhất mà tôi đang thực hiện là Clean Code của Robert C. Martin (Chú Bob). Gần đây, một nhóm lập trình viên trong khu vực của tôi thậm chí đã thành lập một câu lạc bộ sách, để chúng ta có thể học hỏi các thực tiễn tốt nhất cùng nhau và trao đổi kinh nghiệm của chúng tôi. Tôi không nghĩ tôi sẽ là một lập trình viên giống nhau nếu tôi không đọc sách về nghề lập trình. Có rất nhiều tài liệu tuyệt vời ngoài đó và thật tuyệt khi ai đó ngưng tụ nó cho bạn và cho bạn một điểm khởi đầu trước khi bạn tự mình thử nghiệm.


3
Một câu lạc bộ sách nghe có vẻ là một ý tưởng tuyệt vời!
JBRWilkinson

5

Tôi đọc chúng, vì vậy hãy thêm 1 vào danh sách nhìn thấy của bạn. (Có bao nhiêu trước khi chúng ta ra khỏi danh sách các loài có nguy cơ tuyệt chủng?)

Nghiêm túc mà nói, tôi ngạc nhiên rằng những người bỏ phiếu hàng đầu tại thời điểm này là những người nói rằng họ thấy ít giá trị trong sách lập trình. Chắc chắn có một số điều tôi ước mình đã không bỏ tiền ra, nhưng có một số điều đã hoàn toàn mở mắt cho các khái niệm & kỹ thuật mới và khiến tôi trở thành một lập trình viên giỏi hơn. Ví dụ:

  • Zen tối ưu hóa mã bởi Abrash - Tôi nghĩ rằng đây là lý do chính khiến tôi là một lập trình viên thời gian thực ngày nay.
  • Những suy ngẫm về C ++ của Koening & Moo - Giá trị thực của các trình vòng lặp và STL đã không nhấp cho đến khi tôi đọc cái này.
  • Tái cấu trúc bởi Fowler - Dạy tôi cách cấu trúc và tái cấu trúc mã.
  • Lập trình cực đoan được giải thích bởi Beck - Mặc dù tôi chưa bao giờ uống hoàn toàn công cụ hỗ trợ nhanh nhẹn, cuốn sách này đã thay đổi cách tôi nghĩ về các yêu cầu, thử nghiệm và quản lý quá trình phát triển.

Tôi đã học cách viết mã ở trường, nhưng tôi đã không học cách viết mã tốt cho đến khi tôi đọc được một số cuốn sách hay.


5

Trong khi phỏng vấn các nhà phát triển, tôi nhận thấy rằng những người thực hiện tốt hơn các nhiệm vụ kỹ thuật (cả bằng lời nói và thực tế) và (quan trọng hơn nhiều) hiểu lý do tại sao họ làm những gì họ đang làm là tất cả các nhà phát triển đọc ít nhất cuốn sách thỉnh thoảng. Tôi không nghĩ rằng đó hoàn toàn là một sự trùng hợp.

Mặc dù bạn chắc chắn có thể sử dụng Google cho câu trả lời nhanh và blog có thể tuyệt vời để đưa tin sâu sắc về những điều cụ thể, những cuốn sách tôi nghĩ cung cấp cho bạn cái nhìn phối hợp hơn về các chủ đề mà chúng đề cập. Ngoài ra, bằng cách cung cấp thông tin trong một bối cảnh khác, chúng giúp kiến ​​thức bám vào đầu mọi người tốt hơn. Ngay cả khi đó là thứ bạn đã biết tôi nghĩ rằng nó có giá trị để có thứ gì đó xác nhận kiến ​​thức đó.

Cuối cùng, nếu ai đó đang đọc sách về chủ đề họ đang làm việc thì điều đó gần như chắc chắn có nghĩa là họ thực sự quan tâm đến những gì họ đang làm và không chỉ tìm hiểu mọi thứ - đối với công việc dựa trên kiến ​​thức hoặc sáng tạo, điều này rất quan trọng nếu Bạn là nhân viên tốt nhất.


4

Tôi cho rằng bạn đang nói về những cuốn sách về thực hành lập trình và phát triển phần mềm hơn là về các công nghệ cụ thể ...

Cá nhân, tôi có xu hướng tránh những cuốn sách này bởi vì rất ít trong số chúng có bất cứ điều gì hữu ích để nói. Đối với mỗi cặp lập trình viên thực dụng, có rất nhiều tác giả thúc đẩy các phương pháp / định kiến ​​cá nhân / lý thuyết thống nhất của họ ... và trong khi thật vui khi nghe họ tranh luận trong một podcast, đọc sách của họ chỉ mang tính giải trí hơn đọc danh sách mua sắm của họ ... và có lẽ ít hữu ích hơn. Bạn sẽ nhận được rất nhiều lời khuyên tương tự trên các diễn đàn và ... dù nơi này là gì ... với lợi thế bổ sung là những bất đồng được tranh cãi giữa những người thực sự tin chúng hơn là giữa tác giả và người rơm của mình.

Thịt trong Code Complete, Tháng huyền thoại, v.v. là những quan sát mà hầu hết các độc giả có kinh nghiệm ít nhất là quen thuộc với tiềm thức. Điều này làm cho chúng hữu ích nhất để củng cố các xác nhận và dạy các lập trình viên trung cấp .


Tôi đồng ý, hầu hết những điều tôi có thể đọc từ một cuốn sách, tôi có thể tìm thấy hiệu quả hơn nhiều trên web. Lý do duy nhất mà tôi vừa đặt mua cuốn sách liên quan đến phần mềm đầu tiên của mình là vì công ty nơi tôi mới bắt đầu cung cấp ngân sách sách 150 euro (liên quan đến lĩnh vực) mỗi năm.
Matthijs Wessels

Tôi không đồng ý. Gần đây tôi đã học các thực hành nhanh nhẹn và không biết cách sử dụng các thực hành đó cho đến khi tôi đọc các cuốn sách về Phát triển hướng thử nghiệm và Tích hợp liên tục từ một số "Sách chữ ký Kent Beck".
Brian D.

4

Tôi thực sự thích sách lập trình. Tôi có hơn 150 người trong số họ. Và vẫn còn chỗ cho nhiều hơn.


3

Vâng, tôi không thể nói chuyện với các lập trình viên khác thực sự.

Tôi cố gắng đọc sách máy tính chất lượng cao . Hiện tại tôi đang làm việc để đọc qua Tháng đàn ông huyền thoại.

Cuốn sách tiếp theo của tôi có lẽ là cuốn sách AI của Russell / Norvig hoặc Dự toán phần mềm của McConnell. Trong tương lai không xa, Lisp thực tế chung của Seibel hiện ra lờ mờ.


Không quan tâm, làm thế nào để bạn đánh giá 'chất lượng cao'? Amazon đánh giá / bảng xếp hạng? Khuyến nghị cá nhân?
JBRWilkinson

@JBRW: những cuốn sách dường như thường được đồng ý là rất tốt. ví dụ: Mã hoàn thành. Ngoài ra, sách bán nguyệt cũng có chất lượng tốt.
Paul Nathan

3

Đọc, đọc, đọc, đọc ... Từ sách, từ blog, bất cứ điều gì ... Tốt hơn từ những cuốn sách hay, nhưng thậm chí đọc những cuốn sách cực kỳ tệ sẽ giúp ích. Nhưng hãy tiếp tục học hỏi. Hãy tiếp tục học hỏi mỗi ngày.


3
"Các nhà lãnh đạo là độc giả" - Tony Robbins, "Đánh thức người khổng lồ bên trong"
JBRWilkinson

2

Tôi đã đọc lại chúng khi tôi mới bắt đầu, nhưng bây giờ hầu hết các cuốn sách tôi có xung quanh có xu hướng tập trung vào phần không mã hóa của phát triển phần mềm (ví dụ: Hướng dẫn thực hành về phòng ngừa lỗi , ước tính phần mềm: Làm sáng tỏ nghệ thuật đen ), sách tham khảo hoặc sách tập trung vào một khái niệm khoa học máy tính hẹp.

Vấn đề lớn nhất mà tôi gặp phải là những cuốn sách cụ thể về công nghệ có xu hướng bị lỗi thời trong một vài năm (ví dụ như không có nhiều người viết Visual Basic 6 ngày nay) vì vậy tôi thấy rằng đầu tư vào những cuốn sách có thể trở nên lỗi thời có xu hướng đầu tư xấu, thậm chí còn nhiều hơn khi có bao nhiêu thông tin có sẵn trực tuyến trong những ngày này. Tương tự như vậy, một số cuốn sách về những thứ như nguyên tắc thiết kế có xu hướng bị bỏ qua để ủng hộ một số trang web thực sự tốt ngoài đó như A List Apart .


2

Lý do để đọc sách là để cải thiện kiến ​​thức và kỹ năng của riêng bạn. Điều đó hàm ý hai điều: (1) bạn phải nhận ra mình có chỗ để cải thiện và (2) bạn phải muốn cải thiện. Nhiều lập trình viên mà tôi đã gặp có kích thước của các hành tinh. Một phần lớn của phần còn lại đã hạnh phúc để bờ biển dọc theo.


1

Tôi đã nhận được một chiếc Kindle mới (Wifi + 3G) vào tuần trước và tôi thích nó, tôi không thể ngừng đọc. Tôi đã mua một số sách điện tử kỹ thuật từ cả Amazon và các nhà xuất bản khác, và đang lướt qua chúng với tốc độ chóng mặt.

Những cuốn sách vật lý bây giờ dường như lỗi thời đối với tôi bây giờ. Tôi không mong đợi điều đó sớm như vậy.


Tôi đã đọc rằng đối với sách học thực tế là tốt hơn. Điều hướng và ghi chú.

Tôi đã dành rất nhiều thời gian để sử dụng phiên bản O'Reilly Safari trên thiết bị di động của mình. Tôi chắc chắn có thể giới thiệu nó. Các cuốn sách được định dạng lại để hiển thị tối ưu và bạn có thể phóng to hình ảnh nếu cần thiết.
Joeri Sebrechts

1

Tôi đã không đọc một cuốn sách kỹ thuật trong nhiều năm ... theo nghĩa đen năm.

Một phần về sự sẵn có của thông tin ở nơi khác. Blog, bài viết, sách trắng, trang web tham khảo, trang web hỗ trợ ngang hàng như SO ...

Một phần là để làm với chi phí và tính không thực tế của sách giấy. Hãy nghĩ về những con số bạn từng đọc một cái gì đó như là phúc âm chỉ để thấy nó là chủ quan, hoặc có lẽ đã lỗi thời. Ngay cả các hướng dẫn tham khảo ngày nhanh chóng, với bản chất luôn thay đổi của thế giới của chúng ta.

Tôi không gõ sách kỹ thuật mỗi lần, nhưng đã qua rồi những ngày chúng là nguồn thông tin duy nhất của bạn về một chủ đề kỹ thuật. Chúng tôi nhận được thông tin của chúng tôi từ nhiều nguồn khác nhau.

Tôi sẽ thú nhận là đã bỏ lỡ họ phần nào, nhưng đối với tôi ít nhất, thời gian đã trôi qua.


1

Câu chuyện cá nhân:

Có lần tôi đã thuyết trình trước một căn phòng gồm 50 hoặc 60 nhà phát triển về một số thứ liên quan đến .NET (tất cả họ đều làm việc cho cùng một công ty).

Microsoft đã tài trợ cho buổi nói chuyện và đưa cho tôi một vài bản sao của cuốn sách "Tư duy đối tượng" của David West (bởi Microsoft Press).

Thật trùng hợp, tôi vừa đọc cuốn sách đó và thấy nó rất hay. Tôi thậm chí còn đề nghị khán giả giải thích rằng tôi có một số bản sao để cho đi và nếu ai đó quan tâm thì tất cả những gì họ phải làm là yêu cầu một bản.

Một số người đã đến để xem cuốn sách, nhưng không ai trong số họ, tôi nhắc lại, không ai , không một người nào quyết định giữ nó.


Đừng đổ lỗi cho họ vì đã không chọn cuốn sách lên. Tư duy đối tượng là cuốn sách ít thực tế nhất về OO tôi từng đọc.
Ed James

0

Tôi vẫn muốn chọn một cuốn sách để học những điều cơ bản của ngôn ngữ. Bằng cách này tôi có thể nhìn vào nó và có được ý tưởng về những gì tôi đang làm bất cứ lúc nào trong ngày / tuần và không phải lo lắng về máy tính xách tay. Khi tôi đã đọc cuốn sách này, tôi sẽ bắt đầu học bằng mã.

Lý thuyết, sau đó thực hành.


0

Tôi không mua nhiều sách lập trình ở định dạng giấy như trước đây. Tôi có đăng ký Safari Books Online , với giá một cuốn sách một tháng, tôi có quyền truy cập không giới hạn vào toàn bộ hàng ngàn cuốn sách lập trình (và các loại khác) từ các nhà xuất bản như O'Reilly, John Wiley & Sons, Addison- Wesley và những người khác.

Tôi cũng có một Kindle thế hệ đầu tiên và đôi khi mua sách lập trình cho nó; tuy nhiên tôi nghĩ rằng Kindle DX lớn (xuất hiện sau khi tôi nhận được) sẽ là một nền tảng tốt hơn cho vật liệu kỹ thuật.


0

(Wow, 5 upvote và 5 downvote - ý kiến ​​này dường như gây tranh cãi nhiều hơn tôi tưởng tượng!)

Tôi không đọc những cuốn sách như Code Complete hoặc tương tự, tôi cũng không cảm thấy rằng tôi nên cuốn sách . Điều đó có nghĩa là gì? Điều gì xảy ra nếu tôi không?

Trước hết, tôi không nghĩ những cuốn sách như vậy làm cho tôi trở thành một lập trình viên tốt hơn. Họ có thể làm việc cho người khác, nhưng không phải cho tôi. Thông tin thực tế họ chứa không chi tiết hoặc kỹ thuật, vì vậy tôi đã biết phần lớn thông tin. Phần còn lại là những ý kiến ​​mà tôi có thể hoặc không thể đồng ý, nhưng tôi chắc chắn sẽ không chấp nhận một cách mù quáng.

Tài liệu duy nhất liên quan đến lập trình mà tôi thực sự thấy thú vị để đọc là các tài liệu kỹ thuật thuần túy với sự chủ quan tối thiểu . Yêu thích của tôi cho đến nay là đặc tả ngôn ngữ C # 4.0 và chuẩn Unicode 5.0. Những người khác thấy đây là một bài đọc rất khô khan và nhàm chán, nhưng tôi thấy rằng nó thu hút tâm trí của tôi và nó có khả năng cung cấp thông tin mà tôi chưa biết.

Cập nhật 2010-Oct-07: Tôi vừa có Lập trình viên thực dụng chỉ cho tôi, vì vậy tôi đã xem vài trang đầu tiên trên Amazon. Trong phần này Ai nên đọc cuốn sách này?, Nó nói: Có lẽ bạn cảm thấy thất vọng vì dường như bạn không đạt được tiềm năng của mình. Có lẽ bạn nhìn vào những đồng nghiệp dường như đang sử dụng các công cụ để làm cho bản thân họ làm việc hiệu quả hơn bạn. Khăn Uhm, không. Không ai trong số đó áp dụng cho tôi. Tôi thất vọng vì các đồng nghiệp của tôi làm việc kém hiệu quả hơn tôi (và họ không quan tâm). Tôi cảm thấy rằng tôi đang đạt được tiềm năng của mình (dù sao tôi cũng có chút ít). Vì vậy, vâng. Không có điểm trong việc đọc cuốn sách này. Chỉ là một trường hợp tại điểm.


1
Tiêu chuẩn Unicode? Có thật không? Tôi có thể thấy một núi thông tin tuyệt vời có thể được khai thác từ tiêu chuẩn C #, nhưng Unicode?
Robert Harvey

1
@Robert: Tôi ngạc nhiên khi bạn nói điều đó. Thông số kỹ thuật C # chỉ là về lập trình. Tiêu chuẩn Unicode cung cấp nhiều thông tin thực tế về hệ thống chữ viết của thế giới, lịch sử của họ, mối quan hệ của họ với ngôn ngữ, địa lý và hành lý văn hóa của họ, bên cạnh tất cả các công cụ lập trình / kỹ thuật.
Timwi

2
-1 Nếu bạn nghĩ rằng Code Complete hoặc loại sách tương tự không dạy bạn bất cứ điều gì ...: - /
Khelben

@Timwi: thật dễ dàng để tranh luận rằng cuốn sách X sẽ không dạy bạn bất cứ điều gì nếu bạn chưa đọc nó ... nhưng làm sao bạn có thể biết?
JBRWilkinson

@JBRWilkinson: Tôi không khẳng định rằng trong một cuốn sách tôi chưa đọc. Đó chỉ là kinh nghiệm của tôi với những cuốn sách mà tôi đã đọc.
Timwi
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.