Was ist die (verrückteste, dümmste, dümmste), was ein client/Chef bat Sie zu tun?[geschlossen]

softwareengineering.stackexchange https://softwareengineering.stackexchange.com/questions/2051

  •  16-10-2019
  •  | 
  •  

Frage

Siehe Titel, aber ich Frage aus technischer Sicht nicht

Nehmen Sie meine 40-jährige Jungfrau Nichte auf ein Datum oder du bist gefeuert.

War es hilfreich?

Lösung

Um Neal Stephensons Science-Fiction-Thriller-Schneeunfall zu vermarkten, wurde ich gebeten, ein "gutartiges" Computervirus zu schreiben. Es würde "gutartig" vorgeben, den Computer des Benutzers zu übernehmen und den Bildschirm durch Schnee zu ersetzen, auch bekannt als "Schneecrash". Nach ungefähr einer Minute Schnee würde der Schnee verblassen und durch eine Werbung für das Buch ersetzt werden. Das wäre "gutartig", sehen Sie. Das Virus würde sich mit normalen Mitteln ausbreiten, aber es würde niemandem etwas ausmachen, denn nachdem Sie seinen Computer übernommen hatten, "bekommen Sie einfach eine lustige Anzeige und dann erleichtert, dass nichts Schlimmes mit Ihrem Computer passiert ist".

Mir wurde tatsächlich gesagt, dass ich dies bei einem großen weltweiten Unternehmen tun soll. Ich musste ein Memo schreiben, in dem alle Gesetze erläutert werden, die dies brechen würden, und alle 17 schlechten Dinge, die passieren könnten, wenn sie mich wirklich dazu gebracht haben, dies umzusetzen.

Andere Tipps

"Diese DLL, die Sie geschrieben haben, ist nur 17 KB. Können Sie einen Code hinzufügen, um ihn größer zu machen? Der Kunde zahlt uns viel Geld, und wir möchten, dass sie sein Geld wert sind."

Verwenden Sie visuelle Quellen.

"Sie kennen dieses riesige 20-jährige COBOL-Programm, das Stapel und Stapel hartcodierter Geschäftsregeln enthält, die unser Unternehmen mehr oder weniger definieren? Würde es Ihnen etwas ausmachen, es in .NET zu konvertieren?"

Yikes.

Wir gehen in ein paar Wochen leben.

Wünsch mir Glück..

Mein Bruder und ich arbeiteten für eine Multimedia-Schwerwebsite für eine sehr Berühmter Rockstar vor vielen Jahren.

Als der Kunde die Site sah, bemerkte er einige Kompressionsartefakte auf einigen JPEGs und fragte, was mit ihnen los sei. Wir erklärten, dass Bilder für Bandbreitenzwecke Komprimierung benötigen und dass die Bilder derzeit bei etwa 80% Qualität komprimiert wurden. Er war beleidigt und sagte etwas, was zu der Wirkung von

Ich bin nicht dorthin gekommen, wo ich heute bin, indem ich mit 80%Dinge mache, und es auf 100%gesetzt.

Wir haben versucht zu erklären, wie es sich auf Benutzer auswirken würde, aber er würde nichts davon haben. Es führte zu der langsamsten Website "Virtual World" aller Zeiten. Das ist tatsächlich passiert.

Wir müssen den Start der Website um zwei Wochen verzögern, da Merkur rückläufig ist und es eine schlechte Zeit ist, neue Dinge zu beginnen.

Nach dem Lesen eines Business -Magazins in einem Flugzeug darüber, wie XML die heiße neue Technologie war (dies war ca. 2002), fragte mich einer unserer Führungskräfte, ob unsere Bewerbung XML verwendete, als ich sagte, nein, er fragte mich, ob wir es hinzufügen könnten.

Jetzt spreche ich nicht über eine Funktion, um Dateien im XML -Format zu importieren/zu exportieren. Er wollte einfach, dass es ohne andere Grund als Teil der Architektur Teil der Architektur ist, als es derzeit beliebt war und unserer App Glaubwürdigkeit verleihen würde.

"Im Moment müssen die Benutzernamen eindeutig sein, und die Passwörter sind nicht. Können wir es umgekehrt machen?"

Vor ungefähr 7 Jahren arbeitete ich in einem maßgeschneiderten Software -Shop, in dem beschlossen, eines seiner Produkte zu verkaufen. Es war eine End-to-End-Operations-Suite für eine Branche. Nun, diese Branche war nicht dafür bekannt, super technologisch zu sein.

Eines Tages stieß der Server eines Kunden auf die Korruption der Festplatte. Der Server, den wir sie verkauft hatten, wurde mit einem adaptec RAID -Controller konfiguriert und für einen RAID 1 -Spiegel eingerichtet. Ihre Anwendungsdatenbank war Toast. Sie hatten seit Monaten nicht mehr Backups durchgeführt. Die Backups, die sie durchgeführt hatten, waren unbrauchbar. Am Ende verloren sie 8 Monate Daten. Sie beauftragten einen IT -Berater, um diese Ermittlungsarbeit zu erledigen.

Telefonanrufe folgten, und der Vertriebsleiter (bekannt für vielversprechende unmögliche Funktionen) sagte ihnen offenbar, dass dies erledigt werden würde, und schrieb sie in einem Vertrag auf.

Der Vertriebsleiter versprach dem Kunden, dass wir sicherstellen würden, dass die Anwendungsdatenbank und alle anderen Anwendungsdateien niemals von RAID-Controllern repliziert würden, wenn die Dateien als beschädigt angesehen würden. Es sollte auch keine Konfiguration erforderlich sein. Ja. Uns wurde gesagt, wir sollen diese Funktionalität in 2 Wochen liefern, oder der Kunde würde uns entlassen.

So hatte der Programmmanager, der einige große Unternehmen mit CRM -Produkten und andere ernsthafte Entwicklungserfolge erzielt hat, und ich hatte ein Treffen mit dem COO und dem Verkaufsleiter. Der Programmmanager detaillierte, wie verrückt, unmöglich und wahnsinnig unmöglich dies war. Der Vertriebsleiter (militärischer Hintergrund) würde ihm einfach (im wahrsten Sinne des Wortes!) In sein Gesicht schreien: "Es ist mir egal! Wie schwer kann es sein, das Raid -Ding nicht überfallen zu lassen?! Ihre Daten wären auf dem anderen Antrieb in Ordnung, wenn die RAID -Ding hatte es nicht vermasselt! "

Am Ende dieses Treffens kündigte der Programmmanager mit einer Null-Day-Mitteilung. Also wurde ich jetzt beauftragt. In der nächsten Woche habe ich sowohl die Adaptec- als auch die LSI -Logik beantragt, einen Ingenieur für eine Telefonkonferenz zu bieten, einfach um angesichts des Verkaufsleiters zu lachen.

Letztendlich verpflichteten sie und hielten ihr Ende des Schnäppchens hoch. Und sie gingen detailliert, wie lächerlich unfreundlich es war. Der Typ von LSI war besonders hart - er hat nichts zuckerhaltig.

Ich musste die Funktion nicht implementieren. Ich musste implementieren ein benutzerdefiniertes Sicherheitsschema, das von einem Kunden angefordert wurde und es ihm ermöglicht, eine der Steuerelemente der Anwendung zu umschalten - auf der Steuerung - als sichtbar, deaktiviert, aktiv . Theoretisch gab es 146.000 Kombinationen. Und wenn Sie sich versehentlich durch das Deaktivieren einer Kontrollgruppe vermasselt haben, hätten Sie unbeabsichtigte Nebenwirkungen. Unnötig zu erwähnen, als ich das Ultimatum erhielt, dass es implementiert werden musste, kündigte ich auch mit einer Zero-Day-Mitteilung.

Sie baten mich, ein kommerzielles Produkt zu durchsuchen, das Quellcode -Fehler automatisch finden und beheben konnte.
Immer noch sucht ... Since 2001 :).

Ich hatte einmal einen client Spezifikation, wörtlich genannt, für code, der in der Lage zu Reisen in der Zeit zurück.

Mein Arbeitgeber geerntet, die Daten für client, und wir liefern es im Datei-format X bei der zehn-Minuten-Takt zwischen 9 AM und 5 PM, außer für die Letzte Lieferung, die in format Y (nur X mit verschiedenen Fußzeile).Ich dachte nur, dass ...und Sie erschrocken.Wir waren das sammeln von low-volume-Daten, und wirklich hatte nur ein oder zwei Daten-Punkte zu liefern, die an einem bestimmten Tag.

"HÖR AUF ZU SPAMMEN UNS MIT LEEREN DATEIEN!!!" Sie weinte."FÜNF K' S ALLE ZEHN MINUTEN ENCLOGULATES UNSERE BANDTUBES!"

Okay.Also, mein code überprüft alle zehn Minuten, und erst geliefert, wenn es etwas zu liefern.Fair genug.

"ABER DIE LETZTE DATEI MUSS IM FORMAT Y!!!" Sie schrie."MODERNE TECHNIK VERWIRRT UND ÄRGERT UNS!FIX ES ODER WIR WERDEN DICH SCHLAGEN, MIT EINEM MASTODON FEMUR!*"

(*- Es ist möglich ich bin misremembering Teile der Konversation.)

"Also, ich bin nur zu liefern Sie die Datei, wenn es neue Daten zu liefern."

"JA."

"Und die Auslieferung für den Tag soll eine andere Datei-format".

"JA."

"Außer dem habe ich keine Möglichkeit zu wissen, welche Datei den letzten Tag bis zum Ende des Tages."

"JA."

"Also ist der einzige Weg für mich, um dies zu implementieren, ist code zu schreiben, geht rückwärts in der Zeit am Ende des Tages zu wiederholen, der das format wie sich herausstellte, die Letzte Lieferung."

"KÖNNTEN SIE ES BERICHTS-SPORT ERREICHT SOUVERÄN?WIR SAHEN, ZURÜCK IN DIE ZUKUNFT II.BIFF TANNEN, MACHT UNS GLÜCKLICH."

Ich weigerte mich, zum Teil, weil die Verletzung der Kausalität ist eine unethische Programmierung Praxis, zum Teil, weil CPAN.org nicht über ein Modul, das würde mich es tun lassen.(Habe ich überprüft.) Am Ende haben Sie mir erlaubt das senden einer Datei im format Y am Ende des Tages, unabhängig davon, ob oder nicht, es hatte keine tatsächlichen Daten.Ich bin mir ziemlich sicher, dass Ihre Bandbreite überlebte den Treffer.

Ohne einen erkennbaren Grund wurde ich in ein privates Treffen eingebracht und forderte nicht zu überprüfen, ob mein Computer überwacht wurde - einschließlich, auch niemals meinen Task -Manager aus irgendeinem Grund zu überprüfen. Ich fragte, ob sie meinen Computer überwachen, und wurde (ungefähr) gesagt: "Dies ist nur eine vorbeugende Sache - wissen Sie, unser Anwalt hat uns gesagt, wir sollen den Mitarbeitern davon erzählen - aber Sie wissen, wir können nicht wirklich sagen - - Aber ich überwache es jetzt nicht. "

(Nudge, ich glaube, sie haben meinen Computer überwacht, nur nicht als sie mir sagten, ich solle nicht nach Überwachungsprogrammen suchen Fernbedienung - Also schaute ich durch das Fenster des CEO und sah ihn von seinem Laptop aus der Ferne auf meinem Computer herumklickten.)

Ich hatte einmal eine lange "Diskussion" mit einem spitzhaariger Chef Wer bestand darauf, dass wir einen 2 in einem etwas Datentyp speichern konnten, weil es "nur eine Ziffer" war.

Das dümmste, worum ich gebeten wurde, ist wahrscheinlich ein merken aufschreiben eines sehr großen Projekts. Es waren ungefähr 350.000 Zeilen, alle C (mit ein wenig Perl für 'Helfer' -Skripts) und gut funktionierten, egal was Kunden damit angetan haben.

Fast ein Jahr später hatten wir:

  • Viele Funktionen, die im Grunde das Gleiche getan haben wie die alten Funktionen
  • Keine wirklichen Verbesserung der Geschwindigkeit oder Funktionalität
  • Ein etwas kleinerer Speicher Fußabdruck
  • Eine viel größere ausführbare Datei
  • Genervte Kunden

Grundsätzlich haben wir nichts erreicht, was vernünftige Refactoring nicht hätte erreichen können. Aber mein Chef war glücklich, wir haben die Helfer -Skripte losgeworden.

Ich halte es für die ungeheuerlichste Zeitverschwendung und den vorhandenen Code, den ich je gesehen habe.

Klient: Wir verwenden Ihre Datenbanksoftware seit einigen Jahren, entwickelt unsere eigenen Anwendungen damit und rufen Sie von Zeit zu Zeit um Hilfe an.

Mir: Ja, wir schätzen es, mit Ihnen Geschäfte zu machen.

Klient: Ja. Jedes Mal, wenn wir anrufen, sagen Sie uns, wie Sie eine neue Funktion verwenden, oder Sie helfen uns, unsere Verwendung zu debuggen, oder bieten eine Problemumgehung für ein Problem.

Mir: Sicher, wir sind immer froh, Hilfe zu sein.

Klient: Gelegentlich enthält Ihr Produkt einen tatsächlichen Fehler, und Ihr Unternehmen behebt es und gibt uns ein Software -Update.

Mir: Wir tun unser Bestes.

Klient: Nun, was wir jetzt von Ihnen brauchen, ist eine Gewissheit, dass Wir werden keine Probleme mehr haben.

Mir: . . .

Ich wurde gebeten, in eine Präsentation unserer Software an einen multinationalen multinationalen potenziellen Kunden zu schreiben, den wir "Spaghetti -Code" -Codierungstechnik verwendet haben.

Natürlich sind wir in Italien ... klingt gut.

Arbeiten Sie kostenlos.

Ändern meiner Syntax -Hervorhebung von Farben, die den im Versionskontrollsystem verwendeten Farben entsprechen.

Mal schauen:

Schreiben Sie Programme in C ++

  1. Ohne die Verwendung der Versionskontrolle,
  2. Kein Refactoring,
  3. Kein Schub,
  4. Limited STL (ich argumentierte und gewann in diesem),
  5. Verwenden Sie unbestätigte Subunternehmerbibliotheken,
  6. ohne Speicherprofiler (um die Arbeit des Subunternehmers zu beheben),
  7. Keine Unit -Tests,
  8. Halten Sie sich an 3 Buchstabennamen für Mitgliedsfunktionsnamen,
  9. Keine Testumgebung (VM auch nicht erlaubt) nur zur Produktion drängen

Können Sie diesen 10-seitigen Bericht übernehmen, dass ich Sie gebeten habe, sich als Word-Dokument vorzubereiten und es in eine PowerPoint-Präsentation zu machen, weil ich wirklich ein visueller Denker bin und den schriftlichen Bericht, den ich Ihnen erstellen kann, nicht lesen kann?

Ok, ich möchte, dass Sie dieses Bild eines Hauses scannen. Wenn ich zurückkomme, sollten Sie mir den hinteren Teil davon zeigen können.

"Ich mag nicht, wie diese Oracle -Datenbank funktioniert. Warum schreiben wir nicht einfach unsere eigene Datenbank?"

(Zugegeben, das war vor über 15 Jahren, aber immer noch!)

Ich wurde gebeten, Artikel von der Website eines Wettbewerbers in einen Iframe zu laden, der in der Haut unserer Website liegt und so aussieht, als würde es von uns kommen.

Für mich war der Verrückteste (und möglicherweise möglicherweise lustigste)

Sehen Sie sich diese 10 Millionen Codezeilen in (veraltete Webtechnologie) an? Schreiben Sie einen Compiler, um ihn in eine funktionierende ASP.NET -Site zu konvertieren.

Es hat nie eine funktionierende Version ausgespuckt (natürlich habe ich versucht, ihnen zu sagen, dass es unpraktisch war), aber es hat trotzdem Spaß gemacht.

Eine Hauptmerkmal einer Anwendung, die unser Unternehmen entwickelte, war die Fähigkeit, große Mengen an Dokumenten nach dem Volltext des Dokuments durchzuführen. Ein Konkurrent machte den folgenden Anspruch in einer Marketingpräsentation an einen unserer Kunden,

Unsere Suchtechnologie ist überlegen, da sie nicht nur den Text der Dokumente durchsucht, sondern auch die "Bits und Bytes" der tatsächlichen Datei in Binärform durchsucht.

Sie gaben ein lächerliches Beispiel dafür, wie die Dezimal -ASCII -Repersentationen der Wörter "Boot" und "Boot" in binärer Form viel weniger ähnlich waren als die gleichen Wörter, wenn Sie die tatsächlichen numerischen Ziffern in der Darstellung verglichen. Die Suche nach den Einsen der Einsen und 0er des Jahres spiegelte also genauer wider, wie ähnlich diese beiden Wörter visuell erschienen und damit den Rückruf verbessert wurden.

Natürlich wurde ich beauftragt, diese Technik zu recherchieren, von der ich annehme, dass sie das Ergebnis eines Marketing -Mannes war, der einen Programmierer irgendwo völlig missverstanden und eine Antwort entworfen hat, die wir in unseren Vorschlag einbeziehen konnten.

Können Sie ein einfaches Zeiteintritts- und Rechnungssystem für unser neues ausländisches Amt schreiben, das eine andere Sprache, Währungs- und Steuergesetze verwendet?

Das kleine Programm von Programmierern möchte, dass wir ein Ticketreservierungssystem für eine kleine Fluggesellschaft durchführen (natürlich in kurzer Zeit). Team sagt:

- Wie Sie sich vorstellen können, benötigen wir einige Tester für dieses Projekt

Boss sagt:

- Mach dir keine Sorgen, lerne aus der Autoindustrie. Sie erinnern von Zeit zu Zeit Autos: Benutzer werden die Tests durchführen.

Ich war Teil eines Mainframe -Support -Teams, das sich mit anderen Support -Teams in einem Rechenzentrum verändert hat. Nach der Schicht hatten wir normalerweise ein Briefing mit Managern und dem Team der nächsten Schicht. Eines Tages tauchte unser neuer Regisseur auf und stellte die Frage: „Warum die durchschnittliche CPU -Last während Ihrer Schicht nur 72%betrug, während die vorherige Verschiebung nahe 95%zeigt? Ich denke, wenn wir es wirklich hart versuchen, könnten wir schließlich eine 100%ige CPU -Last erreichen! "

Vor ungefähr 12 Jahren, als ich im College war, arbeitete ich an einer Datenmodellierungsanwendung für Windows. Das Projekt war nach rund 60.000 Zeilen Win32 -Code fast abgeschlossen, wissen Sie, Code auf die Windows -Plattform. Dann sagte der Client, dass die Anwendung auch "im Web" ausgeführt werden muss. Es fiel ihnen schwer zu verstehen, wie sich diese "kleinere" Anforderungen ändern könnten, die sich so stark auf das Projekt auswirken könnten. Ich habe in Java von Grund auf neu angefangen, beendete aber am Ende das Projekt, bevor es jemals fertig war.

Ich habe 1996 an einem großen Projekt gearbeitet, bei dem wir Live -Sportveranstaltungen erzielten. Dieses Gespräch geschah:

Boss: Gehen Sie zum Veranstaltungsort für die nächste Veranstaltung.

Ich: Was brauchst du mich?

Boss: Sei nur für den Fall.

Ich: Nur für den Fall was?

Boss: Falls der Tech -Lead es verliert. Er ist viel zu gestresst und ich weiß nicht, was er tun könnte.

Ich: Und wenn er es verliert, was soll ich dann tun?

Boss: Bring ihn einfach raus, damit alle anderen weiter arbeiten können. Es ist mir egal, wie du es machst.

Lizenziert unter: CC-BY-SA mit Zuschreibung
scroll top