Lập trình viên Ferengi

Bài viết được dịch từ trang web Coding Horror

Có một chút ồn ào gần đây về một số bình luận của Joel Spolsky trên podcast của chúng tôi:

Tuần trước, tôi có nghe một podcast trên trang web Hanselminutes, trong đó Robert Martin nói về các nguyên tắc SOLID trong phát triển phần mềm. (Nó là một thuật ngữ rất dễ tìm kiếm trên Google!) Đó là về thiết kế hướng đối tượng và họ gọi là thiết kế agile, nhưng thực ra không phải là như vậy. Đó là các nguyên tắc để làm thế nào thiết kế các class của bạn, và các class đó sẽ làm việc như thế nào. Khi tôi lắng nghe họ, thẳng thắn mà nói, tôi có cảm giác rằng tất cả họ đều có vẻ như có lối suy nghĩ về lập trình cực kỳ quan liêu xuất phát từ tâm trí của những người chưa từng viết thật nhiều code.

Bạn có phải là một lập trình viên Ferengi?Bạn có phải là một lập trình viên Ferengi?

Đọc tiếp >>

Advertisements

Lập trình viên và hội chứng tự kỷ

Bài viết được dịch từ trang web Coding Horror

Khi tôi đọc bài viết của Wesner Moise về hội chứng Asperger (một dạng tự kỷ nhẹ), tôi đã không cảm thấy ngạc nhiên. Nhiều người trong số các nhà phát triển phần mềm giỏi nhất mà tôi từng biết đều có một vài đặc điểm đi kèm với hội chứng tự kỷ (Asperger):

Để thành công trong lập trình thì một chút tự kỷ là điều cần thiết!Để thành công trong lập trình thì một chút tự kỷ là điều cần thiết!

Đọc tiếp >>

Kipalog – Nền tảng chia sẻ kiến thức cho lập trình viên

Là một người yêu thích công nghệ, chắc hẳn bạn đã từng một lần nghe đến cái tên Kipalog? Còn đối với những ai đã từng đọc bài viết và tham gia thảo luận trên nền tảng này đều đánh giá đây là một kho kiến thức rất chất lượng và hữu ích dành cho cộng đồng lập trình viên Việt Nam.

Nhưng có bao giờ bạn tự hỏi Kipalog do ai lập ra? Nó được hình thành như thế nào? Cách viết bài trên Kipalog ra sao? Tổ chức và cá nhân nào đứng đằng sau nó? v.v…

Vâng, để giải đáp những băn khoăn chưa có lời giải đáp đó của bạn, hôm nay blog Vinacode đã thực hiện một bài hỏi đáp nhanh với ban quản trị của Kipalog. Dưới đây là danh sách 9 câu hỏi mà nhiều người hay thắc mắc, và đây cũng là những điều bạn nên biết về nền tảng chia sẻ kiến thức lập trình tuyệt vời này. Nào chúng ta hãy cùng bắt đầu nhé!

Giao diện trang chủ của KipalogGiao diện trang chủ của Kipalog

Đọc tiếp >>

Peopleware: Một cuốn sách không thể thiếu cho người làm phần mềm

Bài viết được dịch từ blog Coding Horror

Danh sách Cool Tools của Kevin Kelly đã lựa chọn một cuốn sách từ danh sách những cuốn mà tôi đề xuất bạn nên đọc. Và đó là một trong những cuốn tôi thích nhất. Nó là cuốn sách dạng “kinh điển” trong lĩnh vực quản lý dự án, đó là cuốn Peopleware:

Peopleware là cuốn sách 'kinh điển' trong vấn đề tối ưu hóa năng suất con người.Peopleware là cuốn sách ‘kinh điển’ trong vấn đề tối ưu hóa năng suất con người.

Đọc tiếp >>

Mort, Elvis, Einstein, và Bạn

Bài viết được dịch từ blog Coding Horror

Đầu tuần vừa rồi tôi có viết bài “Có hai kiểu lập trình viên”. Dựa vào số lượng lớn các bình luận mà độc giả để lại, tôi dường như muốn đứt một dây thần kinh. Hoặc hai dây cũng nên. Điều này làm tôi khá ngạc nhiên, bởi vì nội dung bài viết không bao giờ có ý nghĩa công kích và khiêu khích hoặc chỉ trích như nhiều người đã hiểu lầm. Nội dung nó đã là như vậy khi ra khỏi tay tác giả gốc của bài viết mà tôi đã trích dẫn lại là Ben Collins-Sussman, tôi chỉ hướng bài viết của mình với mục đích làm sáng tỏ thêm bài viết ban đầu của ông ta.

Bạn là kiểu lập trình viên Mort, Elvis hay Einstein?Bạn là kiểu lập trình viên Mort, Elvis hay Einstein?

Đọc tiếp >>

Liệu bạn có thể thực sự thuê một Coder?

Bài viết được dịch từ blog Coding Horror

Tôi là một fan hâm mộ của Dan Appleman từ khi tôi trở thành một lập trình viên chuyên nghiệp. Ông là một trong những người hùng của tôi. Thật không may, Dan rất hiếm khi viết blog, vì vậy tôi đã rất phấn khởi khi thấy một loạt các bài viết gần đây trên blog của ông. Một trong những bài viết đó đã đặt ra một câu hỏi mà tôi vẫn thường tự hỏi chính bản thân mình là: liệu tôi có thể thực sự thuê một coder?

Trong một đến hai năm vừa qua, tôi đã luôn để mắt đến rất nhiều trang web công việc trực tuyến như – Elance, guru.com, RentACoder, oDesk. Tôi đã thực sự sử dụng RentACoder một lần (với tư cách là một buyer trên một dự án rất nhỏ) và đã hài lòng với kết quả thu được — và tôi đang tự hỏi mình rằng liệu tôi nên dành nhiều thời gian để ngồi viết các bản đặc tả và quản lý các lập trình viên hơn hay tôi nên tự mình hoàn thành các công việc hơn.

Liệu tôi có thực sự nên thuê một tay Coder?Liệu tôi có thực sự nên thuê một tay Coder?

Đọc tiếp >>

Liệu việc có được những lập trình viên giỏi nhất có thực sự quan trọng?

Bài viết được dịch từ blog Coding Horror

Joel gần đây có viết một bài khá dài và trong bài viết đó thì anh ta đã đặt câu hỏi rằng, liệu việc có được “những lập trình viên giỏi nhất” thì có thực sự quan trọng hay không?

Đây là một cái gì đó mà tôi đã đề cập trước đây: có một sự chênh lệch kỹ năng vô cùng lớn và rất kỳ cục trong nghề phát triển phần mềm. Tỷ lệ mà bạn sẽ làm việc cùng với một thiên tài hoặc là một thằng ngốc khi nhận bất kỳ công việc nào là 50/50.

Liệu việc sở hữu những lập trình viên giỏi nhất có là điều quan trọng?Liệu việc sở hữu những lập trình viên giỏi nhất có là điều quan trọng?

Đọc tiếp >>

Dự luật nhân quyền dành cho lập trình viên

Bài viết được dịch từ blog Coding Horror

Một điều không thể tin nổi đối với tôi đó là một công ty phần mềm sẵn sàng trả cho một lập trình viên mức lương từ $60-$100k đô-la mỗi năm (khoảng 1,2 tỷ-2,1 tỷ VNĐ/năm), tuy nhiên lại cung cấp cho anh ta hoặc cô ta một điều kiện làm việc rất tồi tệ với những máy móc phần cứng rẻ tiền. Điều đó thì không mang lại lợi ích kinh doanh chút nào cả. Và tôi đã nhìn thấy điều này ở khắp nơi. Thật là sốc khi có biết bao nhiêu công ty vẫn không cung cấp cho các nhà phát triển phần mềm những thứ cần thiết để họ có thể thành công.

Tôi đề xuất chúng ta nên lập ra một Bản Dự Luật Nhân Quyền Dành Cho Lập Trình Viên, nhằm bảo vệ những quyền lợi cho các lập trình viên bằng cách ngăn chặn các công ty đang từ chối cung cấp cho họ những công cụ cơ bản để thành công.

Dự luật về các quyền cơ bản dành cho lập trình viên.Dự luật về các quyền cơ bản dành cho lập trình viên.

Đọc tiếp >>

10 Điều răn dành cho lập trình viên tạm gác lại “cái tôi”

Bài viết được dịch từ blog Coding Horror

Lời bàn của Vinacode:

Ở một bài viết trước đây trên blog Vinacode là Tạm gác lại “cái tôi” trong lập trình: Bạn không phải là công việc của bạn, chúng ta đã bàn về phương pháp lập trình mà không có “cái tôi”. Độc giả Alan cũng đã có một bình luận rất hay, và mình xin trích lược một đoạn sang bài viết này như sau:

“Ở những nước kém văn minh, thay vì đề cao luật chơi và sự rành mạch, họ thường thích xuê xoa tình cảm và kêu gọi nhau đừng tự ái, đừng vì “cái tôi” mà hỏng việc tập thể. Nhưng tự ái hay cái tôi là bản chất tự nhiên của con người làm sao kêu gọi dẹp bỏ được? Thậm chí nếu con người không biết tự ái, không biết đề cao bản ngã của mình thì xã hội sẽ dần thiếu tự tôn, thiếu tự trọng, ít liêm sỉ. Nếu chống lại tự nhiên là uổng công vô ích, hãy làm theo một cách khác: Thay đổi văn hóa tiểu nông lúa nước thành văn hóa công nghiệp. Khi nền văn hóa công nghiệp lan tỏa, tự khắc con người trong xã hội đó sẽ phải thay đổi, phải biết chơi bóng theo luật, phải biết chơi theo tính đồng đội nếu không muốn tự đập nồi cơm của mình. Hãy để mỗi cá nhân biết rằng cứ việc đề cao “cái tôi”, không ai cấm, nhưng hãy nhớ rằng lợi ích của anh ta gắn liền với tập thể, tập thể chết thì anh ta cũng chết, vì vậy hãy nỗ lực hết mình theo đúng những gì anh ta đã cam kết.”

Ở bài viết này chúng ta sẽ cùng đọc qua danh sách 10 điều răn dành cho lập trình viên đang làm việc theo phương pháp không có “cái tôi” nhé!

Mỗi cá nhân cứ việc đề cao 'cái tôi', nhưng hãy nhớ rằng lợi ích của anh ta luôn gắn liền với lợi ích tập thể.Mỗi cá nhân cứ việc đề cao ‘cái tôi’, nhưng hãy nhớ rằng lợi ích của anh ta luôn gắn liền với lợi ích tập thể.

Đọc tiếp >>