Jaka jest (najbardziej szalona, ​​najgłupsza, najgłupsza) rzecz, o którą poprosił cię klient / szef? [Zamknięte]

101

Zobacz tytuł, ale nie pytam z technicznego punktu widzenia

Zabierz moją 40-letnią dziewiczą siostrzenicę na randkę lub zostaniesz zwolniony.

µBio
źródło
21
Jeśli jest 40-letnią dziewicą, prawdopodobnie jest także pracownikiem. Czy nie byłoby to sprzeczne z polityką?
Tim Post
51
czy możesz zwrócić jej nieotwarty następnego ranka?
Mawg,
14
Idź czytaj kliencifromhell.net
Pierre-Alain Vigeant,
2
Cały ten Q + As jest jak Dilbert, ale w prawdziwym życiu.
Agos
9
Ach, mody ponownie uderzają przeciwko wyraźnemu interesowi społeczności (70 głosów oddanych!). Westchnienie. Wiesz, może jeśli tak wiele popularnych pytań jest sprzecznych z regułami, może zasady wymagają zmiany?
James

Odpowiedzi:

184

Aby sprzedać thriller science fiction Neala Stephensona Snow Crash, poproszono mnie o napisanie „łagodnego” wirusa komputerowego. „Łaskawie” udawałoby przejęcie komputera użytkownika i zastąpienie ekranu śniegiem, czyli „katastrofą śnieżną”. Po minucie śniegu śnieg zniknie i zostanie zastąpiony reklamą książki. To byłoby „łagodne”. Wirus rozprzestrzenia się za pomocą zwykłych środków, ale nikomu nie przeszkadza, ponieważ po przejęciu komputera „dostaniesz zabawną reklamę, a potem poczujesz ulgę, że nic złego się nie stanie z komputerem”.

Powiedziano mi, że mam to zrobić w dużej korporacji na całym świecie. Musiałem napisać notatkę wyjaśniającą wszystkie prawa, które to złamałoby i wszystkie 17 złych rzeczy, które mogłyby się zdarzyć, gdyby naprawdę zmusiły mnie do wprowadzenia tego w życie.

Joel Spolsky
źródło
6
Kazano ci to zrobić w Viacom?
Carlos Muñoz,
44
Święte kule. To najdoskonalszy przykład „To tylko zło, jeśli robią to inni ludzie - jeśli to robimy, MUSI być w porządku!” sposób myślenia, który słyszałem od jakiegoś czasu.
BlairHippo,
10
Meh Nie byłoby gorzej niż sama książka ...;)
Mason Wheeler
14
To cudownie. Możemy sprzedać go w pakiecie z moim „łagodnym” keyloggerem, który wyświetla reklamy, gdy użytkownicy odwiedzają witryny konkurencji, a my będziemy bogaci.
µBio
8
@Neil G: 1. zrób dla ciebie coś rażąco nielegalnego 2. zysk! 3. obwiniaj pracownika za złapanie 4. większy zysk !!! (działało w przypadku rootkita Sony, IIRC)
Piskvor,
136

„Ten plik DLL, który napisałeś, ma tylko 17kb. Czy możesz dodać kod, aby go powiększyć? Klient płaci nam dużo pieniędzy, a my chcemy, żeby ich wartość była warta”.

Scott Fletcher
źródło
2
Najłatwiejsza strategia maksymalizacji zysku w historii.
Craig Walker,
97
1) Osadzić jajko wielkanocne symulatora lotu. 2) ... 3) Zysk!
Bill Karwin,
38
Pracowałeś dla Oracle?
Sergio Acosta
31
MUSZĄ to zrobić sterowniki drukarki HP. Są jedyną firmą, która wydaje się uważać, że 400 MB instalacji jest normalne dla prostych drukarek. A teraz, jaka kombinacja klawiszy uruchamia symulację lotu?
JYelton,
8
Nazywasz to szalonym / głupim / głupim? Jeden klient robił to regularnie, ponieważ ich klient mierzył postępy na podstawie wielkości otrzymanych plików wydania.
foo
95

Użyj Visual SourceSafe.

Thakur
źródło
7
Nic tego nie dorówna.
Jaco Pretorius
9
Bije nic.
rjzii
17
@Rob - Nie jestem tego taki pewien. Nie mając nic, przynajmniej wiesz , że twoje źródło jest „niechronione”. VSS daje złudzenie ochrony, a jednocześnie pogarsza sytuację. To najgorsze fałszywe poczucie bezpieczeństwa.
CraigTP
5
Jestem z Robem. Bicie nie ma nic. Chociaż już go nie używam. Przez całą swoją karierę prawdopodobnie używałem go przez całą dekadę i nigdy nie miałem poważnej utraty danych. @CraigTP, może być zawodny, ale nie jest w 100% zawodny, jak się wydaje. Instalacja VSS, której kopie zapasowe są często wykonywane (i przechowywane są długie kopie zapasowe), jest rzeczywiście lepsza niż nic.
JohnFx,
89

„Znasz ten olbrzymi 20-letni program Cobol, który zawiera stosy sztywnych reguł biznesowych, które w mniejszym lub większym stopniu określają naszą firmę? Czy miałbyś coś przeciwko konwersji na platformę .NET?”

Yikes.

Rozpoczniemy transmisję za kilka tygodni.

Życz mi szczęścia..

Kodowanie Bezsenność
źródło
17
Jezu, +1 tylko za współczucie!
Paddyslacker,
46
Czy masz gdzieś przycisk wpłaty Paypal? Chciałbym ci kupić aspirynę.
Tim Post
5
Jeśli to osiągniesz, będziesz programistycznym Bogiem, a także będziesz mieć szczęście, że dostaniesz „dzięki”
Kevin Laity
15
Dziękuję wszystkim za wsparcie. I żeby Cię poinformować, jesteśmy teraz na żywo!
CodingInsomnia
25
Najgorsze jest to, że jeśli zrobisz to naprawdę naprawdę dobrze, nie dostaniesz prawie żadnego kredytu. „Tak, działa dokładnie tak samo jak wcześniej”.
MatrixFrog,
78

Mój brat i ja wiele lat temu pracowaliśmy nad multimedialną stroną internetową dla bardzo znanej gwiazdy rocka .

Gdy klient zobaczył witrynę, zauważył pewne artefakty kompresji na niektórych plikach JPEG i zapytał, co jest z nimi nie tak. Wyjaśniliśmy, że obrazy wymagają kompresji do celów związanych z przepustowością i że obrazy są obecnie kompresowane z około 80% jakością. Był obrażony i powiedział coś do skutku

Nie dotarłem do miejsca, w którym jestem dzisiaj, robiąc rzeczy na poziomie 80%, ustaw to na 100%.

Próbowaliśmy wyjaśnić, w jaki sposób wpłynie to na użytkowników, ale on nie miałby tego. Spowodowało to powstanie najwolniejszej witryny „wirtualnego świata”. To się faktycznie wydarzyło .

jessegavin
źródło
20
„Wszystkie te komputery i cyfrowe gadżety nie są dobre, po prostu wypełniają głowę liczbami, a to nie może być dla ciebie dobre”. - boston.com/ae/specials/culturedesk/2010/07/…
Evan
18
Przynajmniej nie poprosił cię o zwiększenie go do 110%.
Barry Brown,
26
Jan. To naprawdę był on. Zaufaj mi, gdybym chciał się przebrać lub grać na gitarze elektrycznej jak czarodziej, byłby on pierwszą osobą, do której poszedłem. Ale nie dotyczy najlepszych praktyk w zakresie projektowania stron internetowych.
jessegavin
5
Na początku czytałem to jako wymagające 100% kompresji, a nie 100% jakości obrazu!
Andrew Grimm
4
„Nie dotarłem do miejsca, w którym jestem dzisiaj, robiąc rzeczy na poziomie 80%, ustaw go na 100%”. To właściwie NIESAMOWITY cytat. Osoba, która powiedziała, że ​​to Prince, prawda? nie jakiś menedżer czy coś?
Ziv
73

Musimy opóźnić uruchomienie witryny o dwa tygodnie, ponieważ Mercury jest w wersji wstecznej i jest to zły czas na rozpoczęcie nowych rzeczy.

GSto
źródło
51
Przynajmniej nie chcieli wystartować 2 tygodnie wcześniej.
Jeff,
1
Ha! Słyszałem o tym bardzo często w Indiach
sabertooth
ha ha ha ... to jedna z najfajniejszych rzeczy, jakie kiedykolwiek widziałem .. +1 do Gsto i Jeffa.
Zerotoinfinity,
51
Jeśli piszesz oprogramowanie dla sondy kosmicznej, może to mieć sens.
Bruce Alderman,
1
Mercurial zawsze działa wstecz.
Erik Reppen
72

Oczywiście po przeczytaniu jakiegoś magazynu biznesowego w samolocie na temat tego, jak XML była nową, gorącą technologią (było to około 2002 r.), Jeden z naszych kierowników zapytał mnie, czy nasza aplikacja używa XML, kiedy powiedziałem „nie”, zapytał mnie, czy możemy go dodać.

Teraz nie mówię o funkcji importowania / eksportowania plików w formacie XML, po prostu chciał, aby była ona częścią architektury bez żadnego innego powodu niż był w tej chwili popularny i nadałby wiarygodność naszej aplikacji.

JohnFx
źródło
5
Miałem to samo w 1998 r. - tyle że artykuł dotyczył Oracle, a nasza aplikacja była zasadniczo edytorem schematów postępowania. Przeniesiliśmy format pliku, który wypisywaliśmy z dysku do tabeli i uzależniliśmy się od licencji Oracle. Bardzo utrudnia kontrolę wersji.
Rob Fuller,
3
O chłopie. Miałem dokładnie to samo (mniej więcej w tym samym czasie) i dotyczyło to także XML. Co takiego było w XML, który spowodował, że execs zaczęli ślinić się?
CraigTP
49
To dość powszechne. Nazywa się to „zgodnością z modnymi słowami”.
Michael H.
6
@CraigTP Myślę, że to „X”. To dramatyczne i atrakcyjne.
Adrian
3
Patrząc wstecz, powinienem był uspokoić, mówiąc. Co więcej, nasza aplikacja internetowa używa HTML z całą dodatkową literą w akronimie, a kod przypomina wyspecjalizowaną wersję XML, która spełnia nasze dokładne potrzeby biznesowe!
JohnFx,
68

„W tej chwili nazwy użytkowników muszą być unikalne, a hasła nie są. Czy możemy to zrobić na odwrót?”

Craig Walker
źródło
1
ha .. Popełniłem błąd, gdy nazwa użytkownika i hasło musiały być unikalne. krótkotrwały błąd na szczęście
WalterJ89
13
Co do cholery próbowali osiągnąć?
Jason Baker
3
O ile pamiętam, miało to związek z klientem udostępniającym adresy e-mail w firmie. E-maile i nazwy użytkowników miały rozmiar 1: 1, więc pomysł polegał na utworzeniu wielu kont o tej samej nazwie użytkownika i użyciu haseł do ich rozróżnienia.
Craig Walker
W takim przypadku równie dobrze mogą całkowicie usunąć nazwy użytkownika i wyszukać konto na podstawie (unikalnego!) Hasła. Sheesh ... czy powiedzieli ci coś jeszcze, dlaczego tak tego chcieli?
foo
10
@Craig Walker Amazon miał to kiedyś. Utworzyłem jedno konto z moim adresem e-mail Yahoo, a następnie inne konto przy użyciu innego hasła z tym samym adresem e-mail. Nie wiem, kiedy to naprawili, ale w zależności od hasła, którego użyłem, założyłem inne konto.
Yahel,
65

Około 7 lat temu pracowałem w sklepie na zamówienie, który postanowił sprzedać jeden z jego produktów. Był to kompleksowy pakiet operacyjny dla niektórych branż. Cóż, ta branża nie była znana z tego, że jest super technologiczna, więc w jakiś sposób ostatecznie zapewniamy wsparcie techniczne stron trzecich dla ich serwerów i infrastruktury IT zamiast udostępniać je niezależnym konsultantom IT z małych firm.

Pewnego dnia serwer klienta napotkał uszkodzenie dysku. Serwer, który sprzedaliśmy, został skonfigurowany z kontrolerem Adaptec RAID, skonfigurowanym dla kopii lustrzanej RAID 1. Ich baza danych aplikacji toast. Nie tworzyli kopii zapasowych od miesięcy. Kopie zapasowe, które wykonali, były bezużyteczne. Ostatecznie stracili 8 miesięcy danych. Zatrudnili konsultanta IT do obsługi tej pracy dochodzeniowej.

Nastąpiły rozmowy telefoniczne, a kierownik sprzedaży (znany z obiecujących niemożliwych funkcji) najwyraźniej powiedział im, że zostanie załatwiony, i napisał to w umowie.

Kierownik sprzedaży obiecał klientowi, że upewnimy się, że baza danych aplikacji i wszelkie inne pliki związane z aplikacjami nigdy nie będą replikowane przez kontrolery RAID, jeśli pliki te zostaną uznane za uszkodzone. Nie trzeba też konfigurować. Tak. Powiedziano nam, aby dostarczyć tę funkcję w ciągu 2 tygodni, inaczej klient nas zwolni.

Tak więc kierownik programu - który miał na swoim koncie kilka produktów CRM dla dużych przedsiębiorstw i inne poważne sukcesy programistyczne - i spotkałem się z dyrektorem ds. Operacyjnych i kierownikiem sprzedaży. Kierownik programu szczegółowo opisywał, jak szalone, niemożliwe i niesamowicie niemożliwe. Kierownik sprzedaży (tło wojskowe) po prostu krzyczałby mu w twarz (dosłownie!): „Nie obchodzi mnie to! Jak trudne może być uczynienie RAID rzeczą nie RAID ?! Ich dane byłyby w porządku na drugim dysku, gdyby RAID nic nie spieprzyło! ”

Pod koniec tego spotkania kierownik programu zakończył pracę z zerowym wyprzedzeniem. Więc miałem teraz za to zadanie. W ciągu następnego tygodnia złożyłem petycję zarówno do Adaptec, jak i LSI Logic, aby zapewnić inżyniera do połączenia konferencyjnego, po prostu śmiać się w obliczu kierownika sprzedaży.

Ostatecznie zobowiązali się i podnieśli koniec umowy. I szczegółowo opisali, jak absurdalnie było to niewykonalne. Facet z LSI był wyjątkowo surowy - niczego nie pokrył cukrem.

Nie musiałem implementować tej funkcji. Jedną z rzeczy, które musiałem wdrożyć, był niestandardowy schemat bezpieczeństwa wymagany przez klienta, który pozwoliłby mu przełączać dowolne elementy sterujące aplikacji - na zasadzie sterowania przez kontrolę - jako widoczne, wyłączone, włączone, tylko do odczytu lub do odczytu i zapisu . Teoretycznie było 146 000 kombinacji. A jeśli przypadkowo spieprzysz, powiedzmy ... wyłączając grupę kontrolną, będziesz miał niezamierzone skutki uboczne. Nie trzeba dodawać, że kiedy otrzymałem ultimatum, że trzeba go wdrożyć, zrezygnowałem z wypowiedzeniem zero dni.

Lazy DBA
źródło
44
+1za „rezygnację z wypowiedzenia z zerowym dniem”, ponieważ czasami trzeba po prostu odejść, a niektórzy ludzie nigdy tego nie dostają i wciąż się mylą.
sbi
58

Poprosili mnie o wyszukanie produktu komercyjnego, który mógłby automatycznie znaleźć i naprawić błędy w kodzie źródłowym.
Wciąż szukam .. od 2001 roku :).

systempuntoout
źródło
5
Dlaczego nie możesz użyć produktu typu open source do wykonania tego zadania? Czy po prostu uwielbiają wydawać pieniądze? W końcu będzie drogo! :)
alternatywa
35
„Czy moglibyśmy mieć listę wszystkich nieoczekiwanych błędów, proszę ...”
Evan
3
Wyobraź sobie, że klient nie potrzebuje programisty do opracowania swojej aplikacji. On sam może napisać wszystko, a debugger rozwiąże to automatycznie. Daj mi google, dam ci znać, jeśli znajdę coś takiego :-)
Zerotoinfinity
7
Mam takie narzędzie. Problem polega na tym, że zajmuje to kilka tygodni lub miesięcy, w zależności od problemu, ogromnej ilości interakcji z zespołem, dużej ilości kawy i jest bardzo drogi.
Michael Haren
2
@ Michael wysyła mi dwie kopie, muszę wykonać zadanie.
systempuntoout
57

Kiedyś miałem specyfikację klienta, która dosłownie wymagała kodu zdolnego do cofania się w czasie.

Mój pracodawca zebrał dane dla klienta, a my mieliśmy dostarczać je w formacie X w odstępach dziesięciominutowych między 9:00 a 17:00, z wyjątkiem ostatecznej dostawy, która była w formacie Y (tylko X z inną stopką). Zrobiłem właśnie to ... a oni oszaleli. Gromadziliśmy niewielkie ilości danych i naprawdę mieliśmy tylko jeden lub dwa punkty danych do dostarczenia w danym dniu.

„WYJDŹ OD SPAMMINGU Z PUSTYMI PLIKAMI !!!” oni płakali. „KAŻDY DZIESIĘĆ MINUT PIĘĆ K OZNACZA NASZE BANDTUBY!”

W porządku. Tak więc mój kod sprawdzany jest co dziesięć minut i dostarczany tylko wtedy, gdy jest coś do dostarczenia. Słusznie.

„ALE OSTATNI PLIK MUSI BYĆ W FORMACIE !!!” krzyczeli. „NOWOCZESNA TECHNOLOGIA KONFUZUJE I WSTRZYMAJE NAS! USUŃ, CZY BĘDZIEMY BIEĆ CIEBIE Z MASTODONEM! *”

(* - Możliwe, że źle pamiętam fragmenty rozmowy.)

„Więc dostarczę plik tylko wtedy, gdy będą dostępne nowe dane”.

"TAK."

„Ostateczna dostawa tego dnia ma mieć inny format pliku”.

"TAK."

„Tyle że nie mam sposobu, aby wiedzieć, który plik będzie ostatnim dniem do końca dnia”.

"TAK."

„Tak więc jedynym sposobem na wdrożenie tego jest napisanie kodu cofającego się w czasie pod koniec dnia, aby powtórzyć format tego, co okazało się ostateczną dostawą”.

„CZY MOGĘ MIEĆ RAPORT Z WYNIKÓW SPORTOWYCH? ZWRÓCIŁEM SIĘ DO PRZYSZŁOŚCI II. BIFF TANNEN TO NAS SZCZĘŚLIWY”.

Po części odmówiłem, ponieważ pogwałcenie przyczynowości jest nieetyczną praktyką programistyczną, po części dlatego, że CPAN.org nie miał modułu, który pozwoliłby mi to zrobić. (Sprawdziłem.) W końcu pozwolili mi wysłać plik w formacie Y na koniec dnia, niezależnie od tego, czy zawierał jakieś dane. Jestem pewien, że ich przepustowość przetrwała hit.

BlairHippo
źródło
61
+1ponieważ „naruszanie przyczynowości jest nieetyczną praktyką programowania”. Teraz jest zasada, która wymaga więcej uwagi.
sbi
7
I nie zastanawiałeś się nad wysłaniem pliku codziennie o 11:59:59 w formacie Y zawierającym „To ostatni plik dnia”?
DJClayworth,
7
To brzmi jak Owsianka.
Kyralessa
1
Mogłeś wstrzymać ostatnią część danych dla każdej dostawy, aby przenieść ją na następną. W ten sposób na koniec dnia zawsze będziesz miał co najmniej jedną
przesyłkę
3
@Joey Adams: W Internecie nikt nie wie, że jesteś ślimakiem.
Alan Pearce,
52

Bez żadnej widocznej przyczyny zabrano mnie na prywatne spotkanie i powiedziano mi, aby nie sprawdzać, czy monitorowany jest mój komputer - w tym nigdy nie sprawdzam mojego menedżera zadań z jakiegokolwiek powodu. Zapytałem, czy monitorują mój komputer, i powiedziano mi (z grubsza), że to tylko zapobieganie - wiesz, nasz prawnik kazał nam powiedzieć o tym pracownikom - ale wiesz, tak naprawdę nie możemy powiedzieć - - ale nie monitoruję tego teraz. ”

(szturchnijcie, myślę, że monitorowali mój komputer, tylko nie, gdy mówili mi, żebym nie szukał żadnych programów monitorujących. W rzeczywistości kilka tygodni później przyszedłem wcześnie i dosłownie obserwowałem mysz poruszającą się po ekranie, jakby zdalny - więc spojrzałem przez okno CEO i zobaczyłem, jak zdalnie klika mój komputer z laptopa).

GlennIsaac
źródło
57
Mam nadzieję, że nadal tam nie pracujesz.
finnw
Brzmi jak zwycięzca firmy ... Jeśli nadal tam jesteś, powiedziałbym, że bolt.
Pwninstein,
7
Co on chce zrobić ??? Pozwól mu kodować dla ciebie ...
Zerotoinfinity,
22
1) Otwórz notatnik 2) Wpisz „cześć szefie” 3) ... 4) Zysk! Ponadto dobry program nadzoru ukryłby się przed Menedżerem zadań.
Uwaga do siebie - wymyśl imię
Brzmi nielegalnie. Mam nadzieję, że masz prawnika.
Rudolf Olah,
51

Kiedyś miałem długą „dyskusję” ze spiczastym włosy szefem, który nalegał, abyśmy mogli przechowywać 2 w nieco typie danych, ponieważ była to „tylko jedna cyfra”.

Joe Stefanelli
źródło
132
Zdecydowanie możesz to zrobić. Tak długo, jak zmienna nosi nazwę „IsATwo”
JohnFx
wystarczy zmapować zero na 2!
dotjoe
6
bool true, false, file_not_found (przeprosiny dla DailyWTF)
Martin Beckett
47

Najgłupsza rzecz, o którą mnie proszono, to prawdopodobnie przeróbka bardzo dużego projektu. Było to około 350 tys. Linii, wszystkie C (z niewielkim perlem wmieszanym w skrypty pomocnicze) i działały dobrze bez względu na to, co zrobili klienci.

Prawie rok później mieliśmy:

  • Wiele funkcji, które w zasadzie działały tak samo jak stare funkcje
  • Brak rzeczywistej poprawy szybkości lub funkcjonalności
  • Nieco mniejszy ślad pamięci
  • Znacznie większy plik wykonywalny
  • Zirytowani klienci

Zasadniczo nie osiągnęliśmy niczego, czego nie byłoby w stanie przeprowadzić rozsądnego refaktoryzacji. Ale mój szef był szczęśliwy, pozbyliśmy się skryptów pomocniczych.

Uważam to za najbardziej rażącą stratę czasu i istniejącego kodu, jaki kiedykolwiek widziałem.

Tim Post
źródło
3
Jest trochę przestarzały, ale od lidera StackExchange
Hans
2
Również w tym nauczyłeś się dużo ... nie powtarzać tego rodzaju projektu w przyszłości
Zerotoinfinity,
Czy powiedzieli również, dlaczego chcieli przepisać?
stevenvh
46

Klient: Od kilku lat korzystamy z oprogramowania bazodanowego, opracowujemy z nim własne aplikacje i od czasu do czasu wzywamy cię do pomocy.

Ja: Tak, doceniamy robienie interesów z tobą.

Klient: Tak. Za każdym razem, gdy dzwonimy, mówisz nam, jak korzystać z nowej funkcji, pomagasz nam debugować nasze użycie lub podajesz obejście jakiegoś problemu.

Ja: Jasne, zawsze cieszymy się z pomocy.

Klient: sporadycznie w Twoim produkcie jest błąd, a Twoja firma go naprawia i daje nam aktualizację oprogramowania.

Ja: robimy co w naszej mocy.

Klient: Cóż, teraz potrzebujemy od ciebie pewności, że nie będziemy mieć więcej problemów.

Ja: . . .

Bill Karwin
źródło
11
Moja twarz drgnęła lekko podczas czytania.
Daenyth,
@ Daenyth, ja też to mam!
DaveDev
28
To jest prawdziwa historia. Powyższy klient był menedżerem w firmie, która opracowała oprogramowanie do kontroli ruchu lotniczego do rejestrowania danych lotu. Jedyny programista w projekcie (który nie miał nikogo, kto recenzował jego kod) często dzwonił, aby zgłaszać „błąd”, ale okazało się, że był to błąd z jego strony 9 na 10 razy. Nie wiedział o swoich błędach, ponieważ odmówił sprawdzenia statusów błędów zwróconych przez nasz interfejs API. Dlaczego? Ponieważ powiedział, że każdy błąd musi wskazywać na błąd, a nasza biblioteka nie powinna zawierać błędów.
Bill Karwin
2
@Bill, brzmi jak biblioteka powinna zawieść źle i głośno, włączając 10 ostatnich kodów błędów zwróconych do kodu wywołującego.
1
@NimChimpsky: Niektóre z „problemów” klienta to przypadki, w których chcieli, aby oprogramowanie zrobiło coś, do czego nie zostało zaprojektowane, lub gdy popełniali poważne błędy (np. Błędnie napisane słowa kluczowe SQL). Zgłaszali te przypadki jako „błędy”.
Bill Karwin
42

Zostałem poproszony o napisanie w prezentacji naszego oprogramowania dla dużego międzynarodowego potencjalnego klienta, że ​​zastosowaliśmy technikę kodowania „spaghetti code”.

Oczywiście jesteśmy we Włoszech ... brzmi dobrze.

chiccorusso
źródło
12
Tak długo, jak spaghetti jest świeże ... prawda?
37

Wykonaj trochę pracy za darmo.

użytkownik1842
źródło
7
Też mnie o to pytano. „Skończyły nam się środki, czy możesz pracować przez kilka tygodni bez wynagrodzenia, dopóki nie zdobędziemy klientów?”
µBio
Nie ma darmowego lunchu
Chris
36

Zmieniam kolor podświetlania składni, aby pasował do kolorów używanych w systemie kontroli wersji.

Warren Seine
źródło
3
haha, sadystyczny szef / klient
µBio
Tak też mieliśmy ... i wymaganie, aby KAŻDA LINIA była komentowana w 79. kolumnie, aby kod znajdował się po lewej stronie, a komentarze po prawej. Wszystko to zostało wymuszone przez dodatek IDE.
Tevo D
31

Zobaczmy:

Pisz programy w C ++

  1. bez kontroli wersji,
  2. brak refaktoryzacji,
  3. bez wzmocnienia,
  4. ograniczony STL (kłóciłem się i wygrałem na tym),
  5. używaj niezweryfikowanych bibliotek podwykonawców,
  6. bez profilera pamięci (aby pomóc naprawić pracę podwykonawcy),
  7. brak testów jednostkowych,
  8. trzymaj się 3-literowych nazw dla nazw funkcji składowych,
  9. brak środowiska testowego (VM również niedozwolone) po prostu push do produkcji
pszenicy
źródło
2
Łał. Jaki jest wynik Twojej firmy w teście Joela?
DJClayworth,
Myślę, że kiedy zaczynałem 2. Teraz, kiedy już tam jestem, mogę powiedzieć, że grupa A: 4 i grupa B: 8. Zgadnij, do którego chcę dołączyć i zgadnij, który nie pozwoli mi.
wheaties
15
Najwyraźniej twój szef był zdania, że ​​„prawdziwi” programiści programują za pomocą namagnesowanej igły i pewnej ręki. ;)
brice
10
@brice Nie każ mi wyrzucać motyli ...
Uwaga dla siebie -
8
Nikt nigdy nie zmusi cię do pracy bez kontroli wersji. Używaj, co chcesz (osobiście jestem coraz większym fanem git) na własnej maszynie, a stopniowo inni programiści podążą za nimi. Ufnie.
MatrixFrog,
31

Czy możesz wziąć ten 10-stronicowy raport, który poprosiłem o przygotowanie go jako dokument słowny, i zamienić go w prezentację PowerPoint, ponieważ tak naprawdę jestem wizualnym myślicielem i tak naprawdę nie przeczytam pisemnego raportu, o który prosiłem?

David Alpert
źródło
być może jest to sposób na zapewnienie, że wykonujesz prawdziwą pracę, a wszystkie ważne aspekty są uwzględnione na wszystkich etapach, a na końcu przekazany jest najbardziej zwięzły, klarowny pomysł.
Aditya P,
Rzuć pracę, jeśli powie „Zrób to przez EOD”
Chris
26

Ok, chcę, żebyś zeskanował to zdjęcie domu, kiedy wrócę, powinieneś być w stanie pokazać mi jego tylną część.

setzamora
źródło
9
ZOOM ... ULEPSZENIE!
Jon Purdy,
41
och, CSI, jak cię nienawidzę
WalterJ89
1
Ulepsz ... uwydatnij ... uwydatnij ... OH PO PROSTU WYDRUKUJ RANKĘ!
James Dunne
1
@ WalterJ89, może właśnie tam wpadł na pomysł
setzamora,
5
Czy był adres? Wybiegłbym, zrobiłem zdjęcie z tyłu domu i pokazałem mu to. Następnie wyjaśnij, w jaki sposób możesz wejść na zdjęcie, jakby to był inny wymiar. Wydrukuj swoje CV na wypadek, gdyby się nie śmiał.
Jeremy Heiler
22

„Nie podoba mi się sposób, w jaki działa ta baza danych Oracle. Dlaczego nie stworzymy własnej bazy danych?”

(Wprawdzie to było ponad 15 lat temu, ale nadal!)

czwartek
źródło
1
Czemu nie? Niektóre osoby faktycznie to zrobiły i właśnie w ten sposób otrzymaliśmy OODBMS. Wyobraź sobie, że Amazon lub Google używają Oracle jako zaplecza DB ... a następnie zastanów się, jaki wpływ na ich działalność ma szybkość.
foo
20

Poproszono mnie o ładowanie artykułów ze strony internetowej konkurenta do elementu iframe, który znajdowałby się w skórze naszej witryny, dzięki czemu wyglądałoby na to, że pochodzi od nas.

Kevin Laity
źródło
2
Tak ! To samo przydarzyło mi się podczas szkolenia i poproszono mnie o skopiowanie treści z różnych stron internetowych i wklejenie ich na naszą stronę, aby wyglądało jak oryginalny artykuł. Nie mogę podać tutaj nazwy strony internetowej, ale wciąż jest w Internecie i zbiera mnóstwo użytkowników każdego dnia.
Zerotoinfinity,
Ebuyer był z tego znany kilka lat temu.
njd
1
Tak. Ktoś chciał, żebym pomógł im zbudować własną wersję Craigslist, która zrobiła to na początku, dopóki nie otrzymali „własnej treści”. Wyjaśniłem, że jestem prawie pewien, że jest to nielegalne według standardów cyfrowych aktów milenijnych, ale nie sądzili, że to będzie wielka sprawa. Nie wziąłem tej umowy.
Erik Reppen
19

Dla mnie najbardziej szalony (i być może najśmieszniejszy) był

Widzisz 10 milionów linii kodu w (przestarzała technologia internetowa)? Napisz kompilator, aby przekonwertować go na działającą witrynę Asp.net.

Nigdy nie wypluł działającej wersji (oczywiście próbowałem powiedzieć, że to niepraktyczne), ale i tak było zabawnie.

µBio
źródło
55
Miło jest Joelowi S. pozwolić swoim pracownikom pisać o WASABI. ;-)
Donny V.
2
@Donny V. haha, życzę. To było znacznie, dużo bardziej szalone niż to. Dynamiczny wbudowany sql używał strony po stronie serwera do generowania masowych ilości dynamicznego kodu po stronie serwera, prowadząc do gigantycznych segmentów javascript i html z wbudowanym kodem po stronie serwera, który wykonywał zapytania sql, które ...
µBio
19

Jedną z głównych cech aplikacji opracowanej przez naszą firmę była możliwość przeszukiwania dużych ilości dokumentów według pełnego tekstu dokumentu. Konkurent złożył następujące oświadczenie w prezentacji marketingowej jednemu z naszych klientów,

Nasza technologia wyszukiwania jest lepsza, ponieważ nie tylko przeszukuje tekst dokumentów, ale także przeszukuje „bity i bajty” rzeczywistego pliku w formie binarnej.

Dali absurdalny przykład tego, jak dziesiętne reprezentacje ascii słów „bagażnik” i „łódź” ​​były znacznie mniej podobne niż te same słowa w formie binarnej, kiedy porównałeś rzeczywiste cyfry liczbowe w reprezentacji. Wyszukiwanie w oparciu o jedynki i zera dokładniej odzwierciedlało to, jak podobne były te dwa słowa wizualnie, a tym samym poprawiło przywołanie.

Naturalnie miałem za zadanie zbadać tę technikę, która, jak zakładam, była wynikiem marketingowego faceta, który całkowicie nie zrozumiał gdzieś programisty i opracował odpowiedź, którą moglibyśmy uwzględnić w naszej propozycji.

JohnFx
źródło
2
Obawiam się, że mogę wymyślić kilka technik wyszukiwania, które mogłyby (po prostu) nadać sens roszczeniu.
DJClayworth,
19

Czy możesz napisać prosty system wprowadzania i rozliczania czasu dla naszego nowego biura zagranicznego, który korzysta z innego języka, prawa walutowego i przepisów podatkowych?

JeffO
źródło
To dobrze :)
µBio
15

Mały zespół programistów, szef chce, abyśmy zrobili system rezerwacji biletów dla małej linii lotniczej (oczywiście w bardzo krótkim czasie). Zespół mówi:

- jak możesz sobie wyobrazić, potrzebujemy testerów do tego projektu

Szef mówi:

- nie martw się, ucz się od przemysłu samochodowego. Od czasu do czasu przywołują samochody: użytkownicy przeprowadzą testy.

Marco Mustapic
źródło
3
Przychodzi mi na myśl test zderzeniowy ...
Brice
3
Brzmi dobrze, jeśli linia lotnicza ma tylko 1 samolot z 6 miejscami.
Chris
14

Należałem do zespołu wsparcia dla komputerów mainframe, który zmieniał się wraz z innymi zespołami wsparcia w centrum danych. Po zmianie zwykle mieliśmy odprawę z kierownikami i zespołem następnej zmiany. Pewnego dnia nasz nowy dyrektor pojawił się i zadał pytanie: „Dlaczego średnie obciążenie procesora podczas twojej zmiany wynosiło tylko 72%, podczas gdy poprzednia zmiana pokazuje blisko 95%? Myślę, że jeśli naprawdę się postaramy, możemy w końcu osiągnąć 100% obciążenia procesora! „

Boris Okner
źródło
1
Brzmi jak sześciomiesięczny projekt na Hawajach ...
13

Około 12 lat temu, kiedy byłem na studiach, pracowałem nad aplikacją do modelowania danych dla systemu Windows. Projekt był prawie ukończony po około 60 000 linii kodu Win32, wiesz, kodu kierowanego na platformę Windows. Następnie klient powiedział, że aplikacja musi również działać „w Internecie”. Trudno jej było zrozumieć, w jaki sposób ta jedna „niewielka” zmiana wymagań może mieć tak duży wpływ na projekt. Zaczynałem od nowa w Javie, ale ostatecznie opuściłem projekt, zanim jeszcze został ukończony.

Brian Ensink
źródło
13

Pracowałem nad dużym projektem w 1996 roku, w którym nagraliśmy wydarzenia sportowe na żywo. Ta rozmowa się wydarzyła:

Szef: Idź na miejsce następnego wydarzenia.

Ja: Czego potrzebujesz ode mnie.

Szef: Bądź tam na wszelki wypadek.

Ja: Na wszelki wypadek?

Szef: W przypadku, gdy lider technologiczny go straci. Jest zbyt zestresowany i nie wiem, co mógłby zrobić.

Ja: A jeśli go zgubi, co chcesz, żebym zrobił?

Szef: Po prostu zabierz go stamtąd, aby wszyscy inni mogli kontynuować pracę. Nie obchodzi mnie, jak to robisz.

DaveJ
źródło