Điều (điên rồ nhất, ngu ngốc nhất, ngớ ngẩn nhất) mà khách hàng / sếp yêu cầu bạn làm là gì? [đóng cửa]


101

Xem tiêu đề, nhưng tôi đang hỏi từ góc độ kỹ thuật, không phải

Đưa cháu gái 40 tuổi của tôi đi hẹn hò hoặc bạn bị sa thải.


21
Nếu cô ấy là một trinh nữ 40 tuổi, có lẽ cô ấy cũng là một nhân viên. Điều đó có trái với chính sách không?
Tim Post

51
bạn có thể trả lại cô ấy chưa mở vào sáng hôm sau?
Mawg


2
Toàn bộ Q + này giống như Dilbert, nhưng trong cuộc sống thực.
Agos

9
Ah, các mod tấn công một lần nữa chống lại sự quan tâm rõ ràng của cộng đồng (70 lượt bình chọn!). Thở dài. Bạn biết đấy, có lẽ nếu rất nhiều câu hỏi rất phổ biến là trái với quy tắc, có thể quy tắc cần thay đổi?
James

Câu trả lời:


184

Để tiếp thị bộ phim kinh dị Snow Crash của Neal Stephenson, tôi được yêu cầu viết một loại virus máy tính "lành tính". Nó sẽ "lành tính" giả vờ chiếm lấy máy tính của người dùng và thay thế màn hình bằng tuyết, hay còn gọi là "sự cố tuyết". Sau một phút tuyết rơi, tuyết sẽ tan dần và được thay thế bằng một quảng cáo cho cuốn sách. Điều này sẽ là "lành tính", bạn thấy. Virus sẽ lây lan qua các phương tiện thông thường, nhưng không ai bận tâm vì sau khi chiếm lấy máy tính của họ "bạn sẽ nhận được một quảng cáo thú vị và sau đó cảm thấy nhẹ nhõm vì không có gì xấu xảy ra với máy tính của bạn."

Tôi thực sự được yêu cầu làm điều này tại một tập đoàn lớn trên toàn thế giới. Tôi đã phải viết một bản ghi nhớ giải thích tất cả các luật này sẽ phá vỡ và tất cả 17 điều tồi tệ có thể xảy ra nếu chúng thực sự khiến tôi thực hiện điều này.


6
Bạn được yêu cầu làm điều này tại Viacom ???
Carlos Muñoz

44
Quả cầu thánh. Đó là ví dụ hoàn hảo nhất về "Điều đó chỉ xấu nếu người khác làm điều đó - nếu CHÚNG TÔI làm điều đó thì PHẢI ổn!" suy nghĩ tôi đã nghe trong một thời gian.
BlairHippo

10
Meh. Nó sẽ không tệ hơn bản thân cuốn sách ...;)
Mason Wheeler

14
Thật tuyệt vời. Chúng tôi có thể bán nó trong một gói với keylogger 'lành tính' của tôi để phục vụ quảng cáo khi người dùng truy cập các trang web của đối thủ cạnh tranh và chúng tôi sẽ giàu có.
TiếtBio

8
@Neil G: 1. có một cái gì đó bất hợp pháp được thực hiện cho bạn 2. lợi nhuận! 3. đổ lỗi cho nhân viên khi bạn bị bắt 4. lợi nhuận nhiều hơn !!! (điều này đã làm việc cho rootkit Sony, IIRC)
Piskvor

136

"DLL này bạn đã viết chỉ có 17kb. Bạn có thể thêm một số mã để làm cho nó lớn hơn không? Khách hàng đang trả cho chúng tôi rất nhiều tiền và chúng tôi muốn họ nhận được giá trị tiền của họ."


2
Chiến lược tối đa hóa lợi nhuận dễ nhất từ ​​trước đến nay.
Craig Walker

97
1) Nhúng một quả trứng Phục sinh mô phỏng chuyến bay. 2) ... 3) Lợi nhuận!
Bill Karwin

38
Bạn đã làm việc cho Oracle?
Sergio Acosta

31
Trình điều khiển máy in HP PHẢI làm điều này. Họ là công ty duy nhất dường như nghĩ rằng việc cài đặt 400 MB là bình thường đối với các máy in đơn giản. Bây giờ, tổ hợp phím nào bắt đầu sim bay?
JYelton

8
Bạn gọi đó là điên / ngu ngốc / ngớ ngẩn? Một khách hàng đã làm việc này một cách thường xuyên, bởi vì khách hàng của họ đang đo lường tiến trình bằng kích thước của các tệp phát hành mà họ có.
foo

95

Sử dụng Visual SourceSafe.


7
Không có gì đứng đầu này.
Jaco Pretorius

9
Nhịp đập không có gì.
rjzii

17
@Rob - Tôi không chắc lắm. Không có gì, ít nhất bạn biết nguồn của mình là "không được bảo vệ". VSS cho ảo tưởng về sự bảo vệ trong khi thực sự làm cho mọi thứ tồi tệ hơn. Đó là một cảm giác sai lầm về an ninh của loại tồi tệ nhất.
CraigTP

5
Tôi với Rob. Nó không đánh bại gì cả. Mặc dù tôi không còn sử dụng nó. Trong sự nghiệp của mình, có lẽ tôi đã sử dụng nó trong một thập kỷ và không bao giờ bị mất dữ liệu lớn. @CraigTP, nó có thể không đáng tin cậy, nhưng nó không đáng tin cậy 100% vì bạn dường như đang ngụ ý. Một bản cài đặt VSS được sao lưu thường xuyên (và một bản sao lưu dài được giữ lại) thực sự tốt hơn không có gì.
JohnFx


89

"Bạn có biết chương trình Cobol 20 năm khổng lồ này chứa hàng đống quy tắc kinh doanh được mã hóa cứng mà ít nhiều định nghĩa công ty chúng tôi không? Bạn có phiền khi chuyển đổi nó sang .NET không?"

Rất tiếc.

Chúng tôi đi sống trong một vài tuần.

Chúc tôi may mắn..


17
Jeez, +1 chỉ để thông cảm!
Paddyslacker

46
Bạn có nút quyên góp Paypal ở đâu đó không? Tôi muốn mua cho bạn một ít aspirin.
Tim Post

5
Nếu bạn hoàn thành nó, bạn sẽ là một vị thần lập trình và cũng may mắn nhận được "lời cảm ơn"
Kevin Laity

15
Cảm ơn bạn đã ủng hộ mọi người. Và chỉ để cho bạn biết, chúng tôi đang sống!
CodingInsomnia

25
Điều tồi tệ nhất của điều này là nếu bạn làm nó thực sự tốt, bạn sẽ gần như không có tín dụng. "Yup, nó hoạt động chính xác như trước đây."
MatrixFrog

78

Anh trai tôi và tôi đang làm việc trên một trang web đa phương tiện cho một ngôi sao nhạc rock rất nổi tiếng nhiều năm trước.

Khi khách hàng nhìn thấy trang web, anh ta nhận thấy một số tạo tác nén trên một số JPEG và hỏi họ đã làm gì với chúng. Chúng tôi đã giải thích rằng hình ảnh cần nén cho mục đích băng thông và hình ảnh hiện được nén với chất lượng khoảng 80%. Ông đã bị xúc phạm và nói điều gì đó với tác động của

Tôi đã không đến được nơi tôi đang có ngày hôm nay bằng cách làm mọi thứ ở mức 80%, đặt nó thành 100%.

Chúng tôi đã cố gắng giải thích nó sẽ ảnh hưởng đến người dùng như thế nào, nhưng anh ta sẽ không có gì trong số đó. Nó dẫn đến trang web "thế giới ảo" chậm nhất từ ​​trước đến nay. Điều này thực sự đã xảy ra .


20
"Tất cả các máy tính và thiết bị kỹ thuật số này đều không tốt, chúng chỉ lấp đầy đầu bạn bằng những con số và điều đó không thể tốt cho bạn." - boston.com/ae/specials/culturedesk/2010/07/ Kẻ
Evan

18
Ít nhất anh ta không yêu cầu bạn biến nó lên tới 110%.
Barry Brown

26
John. Đó thực sự là anh ấy. Tin tôi đi, nếu tôi muốn ăn mặc cầu kỳ hoặc chơi guitar điện như một phù thủy, anh ấy sẽ là người đầu tiên tôi đến. Nhưng không cho thiết kế web thực hành tốt nhất.
jessegavin

5
Lúc đầu tôi đọc nó như muốn nén 100% chứ không phải chất lượng hình ảnh 100%!
Andrew Grimm

4
"Tôi đã không đến được nơi tôi đang có ngày hôm nay bằng cách làm mọi thứ ở mức 80%, đặt nó thành 100%." Đó thực sự là một trích dẫn TUYỆT VỜI. Người nói đó là Hoàng tử phải không? không phải người quản lý hay cái gì đó?
Ziv

73

Chúng tôi cần trì hoãn việc khởi chạy trang web trong hai tuần vì Sao Thủy đang trong giai đoạn thoái lui và đây là thời điểm tồi tệ để bắt đầu những điều mới.


51
Ít nhất là họ không muốn ra mắt sớm 2 tuần.
Jeff

1
Hà! Tôi đã nghe nói rằng rất nhiều ở Ấn Độ
sabertooth

ha ha ha ... đây là một trong những điều tuyệt vời nhất tôi từng thấy .. +1 cho Gsto và Jeff.
Zerotoinfinity

51
Nếu bạn đang viết phần mềm cho một thăm dò không gian, điều này có thể có ý nghĩa.
Bruce Alderman

1
Mercurial luôn ở trạng thái ngược.
Erik Reppen

72

Rõ ràng sau khi đọc một số tạp chí kinh doanh trên máy bay về cách XML là công nghệ mới nóng hổi (đây là vào khoảng năm 2002), một trong những giám đốc điều hành của chúng tôi đã hỏi tôi rằng ứng dụng của chúng tôi có sử dụng XML không, khi tôi nói không có ông hỏi tôi có thể thêm nó không.

Bây giờ, tôi không nói về một tính năng để nhập / xuất các tệp ở định dạng XML, anh ta chỉ đơn giản muốn nó là một phần của kiến ​​trúc mà không có lý do nào khác ngoài việc nó phổ biến tại thời điểm này và sẽ cho vay ứng dụng của chúng tôi.


5
Tôi đã có một điều tương tự vào năm 1998 - ngoại trừ bài viết trên Oracle và ứng dụng của chúng tôi về cơ bản là một trình soạn thảo sơ đồ quy trình công việc. Chúng tôi đã chuyển định dạng tệp mà chúng tôi đã xuất từ ​​đĩa sang bảng và phụ thuộc vào giấy phép Oracle. Kiểm soát phiên bản thực hiện rất khó khăn là tốt.
Rob Fuller

3
Oh Boy. Tôi đã có cùng một điều chính xác (cùng một lúc) và nó cũng liên quan đến XML. Điều gì về XML đã khiến các nhà điều hành bắt đầu chảy nước dãi?
CraigTP

49
Điều đó khá phổ biến. Nó được gọi là "tuân thủ từ thông dụng".
Michael H.

6
@CraigTP Tôi nghĩ đó là 'X'. Thật ấn tượng và hấp dẫn.
Adrian

3
Nhìn lại tôi chỉ nên xoa dịu bằng cách nói. Thậm chí tốt hơn, ứng dụng web của chúng tôi sử dụng HTML có thêm một chữ cái viết tắt và mã này giống như một phiên bản chuyên biệt của XML đáp ứng nhu cầu kinh doanh chính xác của chúng tôi!
JohnFx

68

"Ngay bây giờ, tên người dùng được yêu cầu là duy nhất và mật khẩu thì không. Chúng ta có thể làm cho nó theo cách khác không?"


1
ha .. Tôi đã phạm sai lầm một lần khi cả tên người dùng và mật khẩu cần phải là duy nhất. sai lầm ngắn ngủi rất may
WalterJ89

13
Cái quái gì họ đang cố gắng thực hiện?
Jason Baker

3
Như tôi nhớ đó là việc cần làm với một khách hàng chia sẻ địa chỉ email tại một công ty. Email và tên người dùng là 1: 1, vì vậy ý ​​tưởng là tạo nhiều tài khoản có cùng tên người dùng và sử dụng mật khẩu để phân biệt chúng.
Craig Walker

Trong trường hợp đó, họ cũng có thể bỏ hoàn toàn tên người dùng và tra cứu tài khoản dựa trên mật khẩu (duy nhất!). Sheesh ... họ đã nói với bạn bất cứ điều gì khác về lý do tại sao họ muốn nó theo cách đó?
foo

10
@Craig Walker Amazon đã từng có điều này. Tôi đã tạo một tài khoản với địa chỉ email yahoo của mình và sau đó một tài khoản khác sử dụng một mật khẩu khác có cùng địa chỉ email. Tôi không biết khi họ sửa lỗi này, nhưng tùy thuộc vào mật khẩu tôi đã sử dụng, tôi sẽ nhận được một tài khoản khác.
Yahel

65

Khoảng 7 năm trước, tôi làm việc tại một cửa hàng phần mềm bespoke đã quyết định bán một trong những sản phẩm của mình. Nó là một bộ hoạt động đầu cuối cho một số ngành công nghiệp. Chà, ngành công nghiệp này không được biết đến là siêu công nghệ, vì vậy bằng cách nào đó chúng tôi đã cung cấp hỗ trợ kỹ thuật của bên thứ ba cho máy chủ và cơ sở hạ tầng CNTT của họ thay vì đưa nó ra cho các chuyên gia tư vấn CNTT doanh nghiệp nhỏ độc lập.

Một ngày nọ, máy chủ của khách hàng gặp phải hỏng đĩa. Máy chủ chúng tôi đã bán chúng được cấu hình với bộ điều khiển RAID Adaptec, được thiết lập cho máy nhân bản RAID 1. Cơ sở dữ liệu ứng dụng của họ là bánh mì nướng. Họ đã không thực hiện sao lưu trong nhiều tháng. Các bản sao lưu họ đã thực hiện là không thể sử dụng. Họ đã mất 8 tháng dữ liệu. Họ đã thuê một nhà tư vấn CNTT để xử lý công việc điều tra này.

Các cuộc gọi điện thoại được đảm bảo, và người quản lý bán hàng (được biết đến với các tính năng không thể hứa hẹn) rõ ràng đã nói với họ rằng nó sẽ được chăm sóc và viết nó trong một hợp đồng.

Người quản lý bán hàng đã hứa với khách hàng rằng chúng tôi sẽ đảm bảo rằng cơ sở dữ liệu ứng dụng và mọi tệp liên quan đến ứng dụng khác sẽ không bao giờ được sao chép bởi bộ điều khiển RAID nếu các tệp được coi là bị hỏng. Không cần cấu hình. Vâng. Chúng tôi được yêu cầu cung cấp chức năng này trong 2 tuần, hoặc khách hàng sẽ sa thải chúng tôi.

Vì vậy, người quản lý chương trình - người có một số sản phẩm CRM doanh nghiệp lớn và những thành công phát triển nghiêm túc khác, dưới vành đai của anh ấy - và tôi đã có một cuộc họp với COO và người quản lý bán hàng. Người quản lý chương trình đã nói chi tiết về việc điều này điên rồ, không thể và điên rồ đến mức nào. Người quản lý bán hàng (nền tảng quân sự) chỉ đơn giản hét vào mặt anh ta (theo nghĩa đen!), "Tôi không quan tâm! Làm thế nào khó khăn để làm cho RAID không phải là RAID?! Dữ liệu của họ sẽ ổn trên ổ đĩa khác nếu Thứ RAID không làm hỏng nó! "

Vào cuối cuộc họp đó, người quản lý chương trình đã bỏ việc với thông báo không có ngày. Vì vậy, bây giờ tôi đã được giao nhiệm vụ này. Trong tuần tới, tôi đã kiến ​​nghị cả Adaptec và LSI Logic để cung cấp một kỹ sư cho một cuộc gọi hội nghị, chỉ đơn giản là cười vào mặt người quản lý bán hàng.

Cuối cùng, họ bắt buộc và giữ kết thúc cuộc mặc cả. Và họ đã đi sâu vào chi tiết nó khó tin đến mức nào. Anh chàng đến từ LSI đặc biệt khắc nghiệt - anh ta không mặc áo đường gì cả.

Tôi đã không phải thực hiện các tính năng. Một cái tôi đã thực hiện là một sơ đồ bảo mật tùy chỉnh do khách hàng yêu cầu, cho phép họ chuyển đổi bất kỳ điều khiển nào của ứng dụng - trên cơ sở kiểm soát bằng cơ sở kiểm soát - như hiển thị, vô hiệu hóa, kích hoạt, chỉ đọc hoặc đọc . Về lý thuyết, đã có 146.000 kết hợp. Và nếu bạn vô tình làm hỏng việc bằng cách nói ... vô hiệu hóa một nhóm kiểm soát, bạn sẽ có những tác dụng phụ vô tình. Không cần phải nói, khi tôi được đưa ra tối hậu thư rằng nó phải được thực hiện, tôi cũng đã bỏ việc với một thông báo không có ngày.


44
+1cho "bỏ việc với thông báo không có ngày", bởi vì đôi khi bạn phải rời đi, và một số người không bao giờ nhận được điều đó và tiếp tục nhầm lẫn.
sbi

58

Họ yêu cầu tôi tìm kiếm một Sản phẩm thương mại có thể tự động tìm và sửa các lỗi mã nguồn.
Vẫn đang tìm kiếm..since 2001 :).


5
Tại sao bạn không thể sử dụng một sản phẩm nguồn mở để thực hiện nhiệm vụ này? Họ chỉ thích tiêu tiền? Rốt cuộc, nó sẽ đắt tiền! :)
thay thế

35
"Chúng tôi có thể có một danh sách tất cả các lỗi không mong muốn không, làm ơn ..."
Evan

3
Hãy tưởng tượng nếu khách hàng không cần nhà phát triển để phát triển ứng dụng của mình. Bản thân anh ta có thể viết bất cứ điều gì và trình gỡ lỗi sẽ tự động giải quyết nó. Hãy để tôi google nó, Ill cho bạn biết nếu tôi tìm thấy bất cứ điều gì như thế này :-)
Zerotoinfinity

7
Tôi thực sự có một công cụ như vậy. Vấn đề là phải mất vài tuần hoặc vài tháng tùy thuộc vào vấn đề trong tay, số lượng tương tác rất lớn với nhóm của bạn, rất nhiều cà phê và rất tốn kém.
Michael Haren

2
@Michael gửi cho tôi hai bản, xin vui lòng hoàn thành công việc.
systempuntoout

57

Tôi đã từng có một đặc tả khách hàng gọi theo nghĩa đen là mã có khả năng du hành ngược thời gian.

Chủ nhân của tôi đã thu thập dữ liệu cho khách hàng và chúng tôi đã gửi dữ liệu ở định dạng tệp X trong khoảng thời gian mười phút từ 9 giờ sáng đến 5 giờ chiều, để dành cho lần giao hàng cuối cùng, ở định dạng Y (chỉ X với một chân trang khác). Tôi đã làm điều đó ... và họ hoảng sợ. Chúng tôi đã thu thập dữ liệu khối lượng thấp và thực sự chỉ có một hoặc hai điểm dữ liệu để phân phối vào bất kỳ ngày nào.

"NHANH TAY SPAMMING CHÚNG TÔI VỚI PHIM EMPTY !!!" họ đã khóc. "NĂM K'S MERYI PHÚT M MINI PHÚT KẾT HỢP BANDTUBES CỦA CHÚNG TÔI!"

Được chứ. Vì vậy, mã của tôi đã kiểm tra cứ sau mười phút và chỉ được giao nếu có gì để giao. Đủ công bằng.

"NHƯNG FILE CUỐI CÙNG PHẢI Ở DẠNG Y !!!" họ hét lên. "CÁC CÔNG CỤ VÀ CÔNG CỤ HIỆN ĐẠI CỦA CHÚNG TÔI! CỐ ĐỊNH NÓ HOẶC CHÚNG TÔI S BE ĐƯỢC BẠN VỚI MỘT FEMUR MASTODON! *"

(* - Có thể tôi đang đánh giá sai các phần của cuộc trò chuyện.)

"Vì vậy, tôi chỉ cung cấp tệp nếu có dữ liệu mới để phân phối."

"ĐÚNG."

"Và giao hàng cuối cùng trong ngày được cho là một định dạng tệp khác."

"ĐÚNG."

"Ngoại trừ tôi không có cách nào để biết tập tin nào sẽ là cuối cùng trong ngày cho đến cuối ngày."

"ĐÚNG."

"Vì vậy, cách duy nhất để tôi thực hiện điều này là viết mã ngược thời gian vào cuối ngày để làm lại định dạng trên những gì hóa ra là giao hàng cuối cùng."

"BẠN CÓ THỂ BÁO CÁO NÓ THỂ THAO NÀO KHÔNG? CHÚNG TÔI ĐÃ TRỞ LẠI TƯƠNG LAI II. BIFF TANNEN LÀM CHO CHÚNG TÔI HẠNH PHÚC."

Tôi đã từ chối, một phần vì vi phạm quan hệ nhân quả là một thực tiễn lập trình phi đạo đức, một phần vì CPAN.org không có mô-đun cho phép tôi làm điều đó. (Tôi đã kiểm tra.) Cuối cùng, họ cho phép tôi gửi một tệp có định dạng Y vào cuối ngày, bất kể nó có dữ liệu thực tế hay không. Tôi khá chắc chắn rằng băng thông của họ đã sống sót sau cú đánh.


61
+1cho "vi phạm nhân quả là một thực hành lập trình phi đạo đức". Bây giờ có một quy tắc cần quan tâm nhiều hơn.
sbi

7
Và bạn đã không cân nhắc việc gửi một tệp mỗi ngày vào lúc 11:59:59 ở định dạng Y có chứa "Đây là tệp cuối cùng trong ngày"?
DJClayworth

7
Điều này đọc như The Oatmeal.
Kyralessa

1
Bạn có thể giữ lại phần dữ liệu cuối cùng cho mỗi lần gửi để chuyển nó sang dữ liệu tiếp theo. Bằng cách này vào cuối ngày, bạn sẽ luôn có ít nhất một mảnh để gửi ở định dạng Y. :)
Fixpoint

3
@Joey Adams: Trên internet, không ai biết bạn là một con ốc sên.
Alan Pearce

52

Không có bất kỳ nguyên nhân rõ ràng nào, tôi đã được đưa vào một cuộc họp riêng, và nói không kiểm tra xem máy tính của tôi có bị theo dõi hay không - bao gồm, không bao giờ kiểm tra trình quản lý tác vụ của tôi vì bất kỳ lý do nào. Tôi hỏi họ có giám sát máy tính của tôi không và được nói (đại khái) "đây chỉ là một biện pháp phòng ngừa - bạn biết đấy, luật sư của chúng tôi đã nói với chúng tôi để nói với các nhân viên về điều này - nhưng bạn biết đấy, chúng tôi thực sự không thể nói - - nhưng tôi không theo dõi nó bây giờ. "

(nudge, tôi nghĩ rằng họ đang theo dõi máy tính của tôi, không phải trong khi họ bảo tôi không tìm kiếm bất kỳ chương trình giám sát nào. Thực tế, vài tuần sau, tôi đến sớm và theo dõi con chuột di chuyển xung quanh màn hình của tôi như thể từ xa - vì vậy tôi nhìn qua cửa sổ của CEO và thấy anh ta bấm từ xa trên máy tính của tôi từ máy tính xách tay của anh ta.)


57
Tôi hy vọng bạn không còn làm việc ở đó.
vây

Nghe có vẻ như là một người chiến thắng của một công ty ... Nếu bạn vẫn còn ở đó, tôi sẽ nói là chốt.
Pwninstein

7
Anh ấy muốn làm gì ??? Hãy để anh ấy mã cho bạn ...
Zerotoinfinity

22
1) Mở notepad 2) Nhập "hi boss" 3) ... 4) Lợi nhuận! Ngoài ra, một chương trình giám sát tốt sẽ ẩn mình khỏi Trình quản lý tác vụ.
Lưu ý đến bản thân - nghĩ về một cái tên

Âm thanh bất hợp pháp. Tôi hy vọng bạn có một luật sư.
Rudolf Olah

51

Tôi đã từng có một cuộc "thảo luận" dài với một ông chủ tóc nhọn , người đã khăng khăng rằng chúng tôi có thể lưu trữ 2 trong một kiểu dữ liệu bit vì nó "chỉ có một chữ số".


132
Bạn chắc chắn có thể làm điều này. Miễn là biến được đặt tên là "IsATwo"
JohnFx

chỉ cần ánh xạ null đến 2!
dotjoe

6
bool đúng, sai, file_not_found (xin lỗi DailyWTF)
Martin Beckett

47

Điều ngu ngốc nhất mà tôi được yêu cầu có lẽ là viết lại một dự án rất lớn. Đó là khoảng 350 nghìn dòng, tất cả C (với một chút perl trộn lẫn cho các tập lệnh 'người trợ giúp') và hoạt động tốt cho dù khách hàng đã làm gì với nó.

Gần một năm sau, chúng tôi đã có:

  • Rất nhiều chức năng về cơ bản đã làm tương tự như các chức năng cũ
  • Không có cải tiến thực sự về tốc độ hoặc chức năng
  • Dấu chân bộ nhớ nhỏ hơn một chút
  • Một thực thi lớn hơn nhiều
  • Làm phiền khách hàng

Về cơ bản, chúng tôi đã hoàn thành không có gì mà tái cấu trúc hợp lý không thể thực hiện được. Nhưng ông chủ của tôi rất vui, chúng tôi đã thoát khỏi các kịch bản trợ giúp.

Tôi coi đó là sự lãng phí thời gian và mã hiện có lớn nhất mà tôi từng thấy.


3
Đó là một ngày ít nhưng từ nhà lãnh đạo StackExchange: joelonsoftware.com/articles/fog0000000069.html
Hans

2
Ngoài ra, trong trường hợp này, bạn đã học được rất nhiều ... để không lặp lại loại dự án này trong tương lai
Zerotoinfinity

Họ cũng nói lý do tại sao họ muốn viết lại?
stevenvh

46

Khách hàng: Chúng tôi đã sử dụng phần mềm cơ sở dữ liệu của bạn trong một vài năm, phát triển các ứng dụng của riêng chúng tôi với nó và thỉnh thoảng gọi cho bạn để được giúp đỡ.

Tôi: Vâng, chúng tôi đánh giá cao việc làm kinh doanh với bạn.

Khách hàng: Vâng. Mỗi lần chúng tôi gọi, bạn cho chúng tôi biết cách sử dụng một tính năng mới hoặc bạn giúp chúng tôi gỡ lỗi việc sử dụng của chúng tôi hoặc cung cấp một cách giải quyết cho một số vấn đề.

Tôi: Chắc chắn, chúng tôi luôn vui khi được giúp đỡ.

Khách hàng: Đôi khi, sản phẩm của bạn có một lỗi thực sự trong đó và công ty của bạn đã sửa nó và cung cấp cho chúng tôi bản cập nhật phần mềm.

Tôi: Chúng tôi làm hết sức mình.

Khách hàng: Chà, những gì chúng tôi cần từ bạn bây giờ là một số đảm bảo rằng chúng tôi sẽ không có thêm bất kỳ vấn đề nào nữa.

Tôi : . . .


11
Mặt tôi co giật một chút khi đọc nó.
Daenyth

@Daenyth, tôi cũng hiểu điều đó!
DaveDev

28
Đây là một câu chuyện có thật. Khách hàng ở trên là quản lý tại một công ty đã phát triển phần mềm kiểm soát không lưu để ghi dữ liệu chuyến bay. Nhà phát triển duy nhất trong dự án (người không có ai xem xét mã của mình) đã gọi để báo cáo "lỗi" thường xuyên, nhưng hóa ra đó là lỗi trên phần 9 của anh ta trong số 10 lần. Anh ta không biết về lỗi của mình vì anh ta đã từ chối kiểm tra các trạng thái lỗi do API của chúng tôi trả về. Tại sao? Bởi vì ông nói bất kỳ lỗi nào cũng phải chỉ ra lỗi và thư viện của chúng tôi không có lỗi.
Bill Karwin

2
@Bill, âm thanh như thư viện của bạn sẽ thất bại nặng nề và lớn tiếng bao gồm 10 mã lỗi cuối cùng được trả về mã gọi.

1
@NimChimpsky: Một số "vấn đề" của khách hàng là trường hợp họ muốn phần mềm làm điều gì đó mà nó không được thiết kế để làm hoặc khi họ mắc lỗi ngón tay cái (như lỗi chính tả từ khóa SQL). Họ báo cáo những trường hợp này là "lỗi".
Bill Karwin

42

Tôi đã được yêu cầu viết một bài thuyết trình về phần mềm của chúng tôi cho một khách hàng tiềm năng đa quốc gia lớn mà chúng tôi đã sử dụng kỹ thuật mã hóa "mã spaghetti".

Tất nhiên, chúng tôi ở Ý ... nghe có vẻ tốt.


12
Chỉ cần mì spaghetti được làm mới ... đúng không?


37

Làm một số công việc miễn phí.


7
Tôi cũng đã được hỏi như vậy. "Chúng tôi đã hết tiền, bạn có thể làm việc không lương trong một vài tuần cho đến khi chúng tôi có được một số khách hàng?"
TiếtBio

Không có bữa trưa miễn phí
Chris

36

Thay đổi màu sắc tô sáng cú pháp của tôi để phù hợp với màu được sử dụng trong hệ thống kiểm soát phiên bản.


3
haha, một ông chủ / khách hàng
tàn bạo

Chúng tôi đã có điều này ... và một yêu cầu rằng MỌI LINE phải được bình luận, trong cột thứ 79, để mã nằm ở bên trái và nhận xét ở bên phải. Và tất cả điều này đã được thi hành bởi một bổ trợ IDE.
Tevo D

31

Hãy xem nào:

Viết chương trình bằng C ++

  1. không sử dụng kiểm soát phiên bản,
  2. không tái cấu trúc,
  3. không tăng,
  4. STL giới hạn (tôi đã tranh luận và giành chiến thắng trong lần này),
  5. sử dụng các thư viện thầu phụ chưa được xác minh,
  6. không có trình lược tả bộ nhớ (để giúp sửa chữa công việc của nhà thầu phụ),
  7. không thử nghiệm đơn vị,
  8. dính vào 3 tên chữ cái cho tên hàm thành viên,
  9. không có môi trường thử nghiệm (VM cũng không được phép) chỉ cần đẩy vào sản xuất

2
Ồ Điểm số công ty của bạn trong bài kiểm tra Joel là gì?
DJClayworth

Khi tôi mới bắt đầu, 2, tôi nghĩ. Bây giờ tôi đã ở đó một thời gian tôi có thể nói nhóm A: 4 và nhóm B: 8. Đoán xem tôi đang cố gắng tham gia và đoán xem ai sẽ không cho tôi.
Wheaties

15
Rõ ràng, ông chủ của bạn có quan điểm rằng các lập trình viên 'Real' có kim từ tính và một bàn tay vững vàng. ;)
brice

10
@brice Đừng bắt tôi phải bươm bướm ...
Lưu ý về bản thân - nghĩ về một cái tên

8
Không ai có thể ép bạn làm việc mà không có kiểm soát phiên bản. Sử dụng bất cứ thứ gì bạn muốn (tôi là một người hâm mộ git ngày càng lớn) trên máy của riêng bạn và dần dần các nhà phát triển khác sẽ làm theo. Hy vọng.
MatrixFrog

31

Bạn có thể lấy bản báo cáo dài 10 trang này mà tôi yêu cầu bạn chuẩn bị như một tài liệu từ và biến nó thành một bài thuyết trình powerpoint vì tôi thực sự là một nhà tư tưởng trực quan và thực sự sẽ không đọc báo cáo bằng văn bản mà tôi yêu cầu bạn làm?


có thể đây là một cách để đảm bảo rằng bạn đang làm công việc chân chính và tất cả các khía cạnh quan trọng được đề cập trong tất cả các bước và cuối cùng ý tưởng sáng suốt súc tích nhất được truyền đạt cuối cùng.
Aditya P

Bỏ công việc, nếu anh ta nói "Làm điều đó bằng EOD"
Chris

26

Ok, tôi muốn bạn quét hình ảnh ngôi nhà này, khi tôi quay lại, bạn sẽ có thể chỉ cho tôi phần phía sau của nó.


9
ZOOM ... NÂNG CAO!
Jon Purdy

41
oh CSI làm thế nào tôi ghét bạn
WalterJ89

1
Tăng cường ... tăng cường ... tăng cường ... OH JUST IN THE DAMN THING!
James Dunne

1
@ WalterJ89 có lẽ đó là nơi anh ấy có ý tưởng
setzamora

5
Có địa chỉ không? Tôi sẽ chạy ra và chụp một bức ảnh phía sau nhà và đưa cho anh ta xem. Sau đó giải thích làm thế nào bạn có khả năng bước vào một bức ảnh như thể đó là một chiều không gian khác. Bản in sơ yếu lý lịch của bạn trong trường hợp anh ta không cười.
Jeremy Heiler

22

"Tôi không thích cách cơ sở dữ liệu Oracle này hoạt động. Tại sao chúng ta không viết cơ sở dữ liệu của riêng mình?"

(Phải thừa nhận rằng điều này đã hơn 15 năm trước, nhưng vẫn vậy!)


1
Cũng tại sao không? Một số người thực sự đã làm điều này, và đó là cách chúng tôi có được OODBMS. Hãy tưởng tượng Amazon hoặc Google sử dụng Oracle làm phụ trợ DB ... và sau đó suy nghĩ về tốc độ ảnh hưởng đến hoạt động kinh doanh của họ.
foo

20

Tôi đã được yêu cầu tải các bài viết từ trang web của đối thủ cạnh tranh trong iframe bên trong trang web của chúng tôi, làm cho nó trông giống như nó đến từ chúng tôi.


2
Đúng ! Điều tương tự cũng xảy ra với tôi khi tôi đang trong khóa đào tạo và tôi được yêu cầu sao chép nội dung từ nhiều trang web khác nhau và dán nó vào trang của chúng tôi và làm cho nó giống như bài viết gốc. Tôi không thể cung cấp tên của trang web ở đây nhưng nó vẫn còn trên internet và thu hút rất nhiều người sử dụng ..
Zerotoinfinity

Ebuyer đã nổi tiếng về điều này một vài năm trước.
njd

1
Vâng. Ai đó muốn tôi giúp họ xây dựng phiên bản Craigslist của riêng họ đã làm điều này lúc đầu cho đến khi họ có "nội dung của riêng họ". Tôi đã giải thích rằng tôi khá chắc chắn rằng điều này là bất hợp pháp bởi các tiêu chuẩn hành động thiên niên kỷ kỹ thuật số nhưng họ không nghĩ rằng nó sẽ là một điều lớn. Tôi đã không nhận hợp đồng đó.
Erik Reppen

19

Đối với tôi, điều điên rồ nhất (và hoàn toàn có thể, vui nhất) là

Xem 10 triệu dòng mã này trong (công nghệ web lỗi thời)? Viết một trình biên dịch để chuyển đổi nó thành một trang Asp.net đang hoạt động.

Nó không bao giờ phun ra một phiên bản làm việc (tất nhiên, tôi đã cố gắng nói với họ rằng nó không thực tế), nhưng dù sao nó cũng rất vui.


55
Joel S. thật tuyệt khi để nhân viên của mình đăng bài về WASABI. ;-)
Donny V.

2
@Donny V. haha, tôi ước. Nó còn nhiều, nhiều, điên hơn thế nhiều. Sql động nội tuyến đã sử dụng phía máy chủ để tạo ra số lượng lớn mã phía máy chủ động, dẫn đến các thùng javascript và html khổng lồ với mã phía máy chủ nhúng, đã thực hiện các truy vấn sql mà ...
KhănBio

19

Một tính năng chính của một ứng dụng mà công ty chúng tôi đã phát triển là khả năng tìm kiếm số lượng lớn tài liệu bằng toàn văn của tài liệu. Một đối thủ cạnh tranh đã đưa ra yêu cầu sau trong một bài thuyết trình tiếp thị cho một trong những khách hàng của chúng tôi,

Công nghệ tìm kiếm của chúng tôi vượt trội hơn vì nó không chỉ tìm kiếm văn bản của tài liệu, nó cũng tìm kiếm 'bit và byte' của tệp thực tế ở dạng nhị phân.

Họ đã đưa ra một ví dụ lố bịch về cách lặp lại ascii thập phân của các từ "khởi động" và "thuyền" ít giống nhau hơn so với các từ tương tự ở dạng nhị phân, khi bạn so sánh các chữ số thực trong biểu diễn. Vì vậy, tìm kiếm dựa trên 1 và 0 phản ánh chính xác hơn hai từ tương tự xuất hiện trực quan và do đó cải thiện việc thu hồi.

Đương nhiên, tôi được giao nhiệm vụ nghiên cứu kỹ thuật này, mà tôi cho rằng đó là kết quả của một anh chàng tiếp thị hoàn toàn hiểu nhầm một lập trình viên ở đâu đó, và phác thảo một phản hồi mà chúng tôi có thể đưa vào đề xuất của chúng tôi.


2
Tôi sợ rằng tôi có thể nghĩ ra một vài kỹ thuật tìm kiếm có thể (chỉ) có ý nghĩa của yêu cầu.
DJClayworth

19

Bạn có thể viết một hệ thống thanh toán và nhập cảnh thời gian đơn giản cho văn phòng nước ngoài mới của chúng tôi sử dụng ngôn ngữ, tiền tệ và luật thuế khác nhau không?


Đó là một thứ tốt :)
GianBio

15

Đội ngũ lập trình viên nhỏ, ông chủ muốn chúng tôi làm một hệ thống đặt vé cho một hãng hàng không nhỏ (tất nhiên là trong một khung thời gian rất ngắn). Đội nói:

- như bạn có thể tưởng tượng, chúng tôi sẽ cần một số người thử nghiệm cho dự án này

Ông chủ nói:

- đừng lo lắng, học hỏi từ ngành công nghiệp xe hơi. Họ nhớ lại xe hơi theo thời gian: người dùng sẽ thực hiện thử nghiệm.


3
Thử nghiệm sự cố xuất hiện trong tâm trí ...
brice

3
Âm thanh tốt, nếu hãng chỉ có 1 máy bay với 6 chỗ ngồi.
Chris

14

Tôi là thành viên của nhóm hỗ trợ máy tính lớn đã thay đổi với các nhóm hỗ trợ khác trong một trung tâm dữ liệu. Sau ca làm việc, chúng tôi thường có một cuộc họp ngắn với các nhà quản lý và nhóm của ca tiếp theo. Một ngày nọ, giám đốc mới của chúng tôi xuất hiện và đặt câu hỏi: "Tại sao tải CPU trung bình trong ca của bạn chỉ là 72%, trong khi ca trước đó cho thấy gần 95%? Tôi nghĩ rằng nếu chúng ta cố gắng thực sự, cuối cùng chúng ta có thể đạt được tải CPU 100%! "


1
Nghe có vẻ như một dự án 6 tháng ở Hawaii ...

13

Khoảng 12 năm trước khi tôi học đại học, tôi đã làm việc trên một ứng dụng mô hình hóa dữ liệu cho Windows. Dự án đã gần hoàn thành sau khoảng 60.000 dòng mã Win32, bạn biết đấy, mã nhắm vào nền tảng Windows. Sau đó, khách hàng cho biết ứng dụng cũng cần chạy "trên web". Cô ấy đã có một thời gian khó hiểu làm thế nào một thay đổi yêu cầu "nhỏ" này có thể có tác động lớn như vậy đối với dự án. Tôi đã bắt đầu lại từ đầu trong Java nhưng cuối cùng đã thoát khỏi dự án trước khi nó hoàn thành.


13

Tôi đã làm việc trong một dự án lớn vào năm 1996, nơi chúng tôi đang ghi bàn các sự kiện thể thao trực tiếp. Cuộc trò chuyện này đã xảy ra:

Sếp: Đi ra địa điểm tổ chức sự kiện tiếp theo.

Tôi: bạn cần tôi làm gì

Sếp: Hãy đến đó trong trường hợp.

Tôi: Chỉ trong trường hợp nào?

Sếp: Trong trường hợp lãnh đạo công nghệ mất nó. Anh ấy quá căng thẳng và tôi không biết anh ấy có thể làm gì.

Tôi: Và nếu anh ấy mất nó, anh muốn tôi làm gì?

Sếp: Chỉ cần đưa anh ta ra khỏi đó để mọi người khác có thể tiếp tục làm việc. Tôi không quan tâm làm thế nào bạn làm điều đó.

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.