Là một người làm việc tự do, tôi thường được khách hàng hỏi rằng họ phải chọn gì giữa các yếu tố tương tự, không yếu tố nào tốt hơn yếu tố khác. Ví dụ:
Tôi có cần trang web thương mại điện tử của mình bằng PHP hay ASP.NET không?
Tôi có cần lưu trữ dịch vụ web thông thường này trong Cloud hoặc sử dụng dịch vụ lưu trữ thông thường không?
Cái nào tốt hơn cho trang web mới của tôi: MySQL hay Oracle?
Vân vân.
Có thể có nhiều nhất 1% trường hợp sự lựa chọn có liên quan, và có một lý do thực tế, khách quan để sử dụng cái này hơn cái khác, dựa trên các số liệu và nghiên cứu chính xác. Trong tất cả các trường hợp khác, nó không thành vấn đề. Điều đó hoàn toàn, hoàn toàn không liên quan, vì không có hàm ý nào, hoặc bởi vì những hàm ý đó quá nhỏ để có thể được đưa vào tài khoản², hoặc, cuối cùng, vì không thể dự đoán được những hàm ý đó.
Nếu bạn biết một điều chứ không phải một điều khác, câu trả lời cho những câu hỏi đó thật dễ dàng:
Bạn có thể viết ứng dụng bằng C # hoặc Java, cả hai đều có thể tương đương trong trường hợp của bạn. Lưu ý rằng tôi là nhà phát triển C #, vì vậy nếu bạn chọn Java, tôi sẽ không thể làm việc với dự án của bạn và bạn sẽ cần tìm một freelancer khác.
Khi bạn biết cả hai công nghệ, bạn không thể trả lời điều đó.
Trong trường hợp này, làm thế nào để giải thích cho khách hàng rằng câu hỏi mà anh ta đặt ra có phải là flamewar và không có hậu quả thực sự đối với dự án của anh ta không?
Nói cách khác, làm thế nào để giải thích rằng bạn đã chọn sử dụng một công nghệ thay vì một công nghệ tương đương vì những lý do liên quan đến nguồn nhân lực, mà không gây ấn tượng là không chuyên nghiệp hoặc không quan tâm đến dự án?
Ví dụ: MySQL có tốt hơn (tệ hơn không?), Thông minh về hiệu suất, so với Oracle, đối với một trang web cá nhân sẽ được truy cập bởi, ồ, hãy lạc quan, hai người mỗi ngày?
² Ví dụ: đối với một dự án nhất định, tôi đã được yêu cầu tài sản nếu lưu trữ Windows Azure sẽ rẻ hơn so với lưu trữ của cùng một ứng dụng trên một nhà cung cấp dịch vụ lưu trữ ASP.NET nổi tiếng. Chi phí tiết lộ là giống hệt nhau.
Ví dụ: khách hàng của bạn có ý tưởng về một ứng dụng trong tương lai (bản thân ý tưởng đó cực kỳ mơ hồ). Không có kế hoạch kinh doanh, không có yêu cầu, không có gì cả. Chỉ là một ý tưởng. Bạn được hỏi liệu Java có tốt hơn C # cho ứng dụng này không. Bạn trả lời gì