Qual è il (più folle, stupido, sciocco) cosa che un cliente / capo vi ha chiesto di fare? [chiuso]

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

  •  16-10-2019
  •  | 
  •  

Domanda

vedi titolo, ma sto chiedendo da un punto di vista tecnico, non

Prendete il mio nipote di 40 anni di età vergine su una data o sei licenziato.

È stato utile?

Soluzione

Per mercato Neal Stephenson thriller fantascientifico Snow Crash, mi è stato chiesto di scrivere un virus informatico "benigno". Sarebbe "benignamente" far finta di prendere in consegna il computer dell'utente e sostituire lo schermo con la neve, anche noto come un "crash neve". Dopo un minuto o poco più di neve, la neve sarebbe fade out ed essere sostituito da una pubblicità per il libro. Questo sarebbe "benigna", vedete. Il virus si sarebbe diffuso attraverso i mezzi normali, ma nessuno sarebbe dispiaciuto perché dopo la presa in consegna i loro computer "si era appena ottiene un annuncio divertente e poi essere sollevato dal fatto che nulla di male è successo al tuo computer".

I è stato effettivamente detto di fare questo ad una grande società in tutto il mondo. Ho dovuto scrivere una nota che spiega tutte le leggi questo avrebbe rotto e tutte le 17 cose cattive che potrebbero accadere se davvero mi ha fatto implementare questo.

Altri suggerimenti

"Questa DLL che hai scritto è solo 17kb. Si può aggiungere del codice per renderlo più grande? Il cliente ci sta pagando un sacco di soldi, e noi vogliamo loro di ottenere i loro soldi".

Utilizzare Visual SourceSafe.

"Sai questa enorme programma di 20-year-old Cobol che contiene pile e pile di regole di business hard-coded che più o meno definisce la nostra azienda? Ti dispiacerebbe convertendolo in .NET?"

Yikes.

andare a vivere in un paio di settimane.

augurarmi fortuna ..

Io e mio fratello stavano lavorando su un multimediale heavy-sito per un tempo molto famosa rock star molti anni fa.

Quando il cliente ha visto il sito ha notato alcuni artefatti di compressione su alcuni dei file JPEG e ha chiesto che cosa era sbagliato con loro. Abbiamo spiegato che le immagini hanno bisogno di compressione per lo larghezza di banda e che le immagini sono state attualmente compressi in qualità circa l'80%. Era offeso e ha detto qualcosa per l'effetto di

Io non sono riuscito a dove sono oggi facendo le cose al 80%, è impostato su 100%.

Abbiamo cercato di spiegare come potrebbe influenzare gli utenti, ma avrebbe niente di tutto ciò. Il risultato è stato il sito più lento "mondo virtuale" mai. Questo è effettivamente accaduto .

Abbiamo bisogno di ritardare il lancio sito due settimane, perché Mercurio è in retrogrado ed è un brutto momento per avviare nuove cose.

Ovviamente dopo aver letto alcune imprese rivista su un aereo su come XML è stata la nuova tecnologia a caldo (questo è stato intorno al 2002), uno dei nostri dirigenti mi ha chiesto se la nostra applicazione utilizza XML, quando non ho detto mi ha chiesto se potevamo aggiungere esso.

Ora, io non sto parlando di una funzionalità per i file di importazione / esportazione in formato XML, ha semplicemente voluto che fosse parte dell'architettura per nessun altro motivo che era popolare in questo momento e potrebbe rendere credibile la nostra app .

"In questo momento, i nomi utente sono tenuti a essere unico, e le password non sono. Possiamo rendere il contrario?"

Circa 7 anni fa ho lavorato in un negozio su misura software che ha deciso di vendere uno dei suoi prodotti. Era una suite di operazioni end-to-end per alcune industrie. Ebbene, questa industria non era noto per essere super tecnologica, così in qualche modo abbiamo finito per fornire supporto tecnico di terze parti per i loro server e infrastruttura IT, invece di agricoltura fuori per piccole imprese consulenti indipendenti IT.

Un giorno, server ha rilevato la corruzione del disco di un cliente. Il server che li ha venduti è stato configurato con un controller RAID di Adaptec, impostato per un RAID 1 specchio. Il loro database dell'applicazione era pane tostato. Non avevano eseguito backup in mesi. I backup eseguiti avevano erano inutilizzabili. Hanno finito per perdere 8 mesi di dati. Hanno assunto un consulente IT per gestire questo lavoro investigativo.

Le telefonate ne seguì, e il direttore delle vendite (noto per promettenti caratteristiche impossibili) a quanto pare ha detto loro che sarebbe stato preso cura di, e hanno scritto in su in un contratto.

Il direttore delle vendite ha promesso al cliente che vorremmo garantire che il database dell'applicazione e qualsiasi altro file relativi alle applicazioni non sarebbero mai essere replicata dai controller RAID se i file sono stati considerati corrotti. Nessuna configurazione dovrebbe essere necessario neanche. Sì. Ci hanno detto di fornire questa funzionalità in 2 settimane, o il cliente ci avrebbe sparato.

Così il direttore del programma - che aveva alcuni prodotti grandi enterprise CRM e altri successi di sviluppo gravi, al suo attivo - e ho avuto un incontro con il COO, e il responsabile delle vendite. Il direttore di programma è stato dettagliare come folle, impossibile, e follemente impossibile questo è stato. Il direttore delle vendite (sfondo militare) sarebbe semplicemente urlare in faccia (letteralmente!), "Non mi importa! Come sia difficile può essere quello di rendere il RAID cosa che non RAID ?! I loro dati andrebbe bene sull'altra unità se il RAID cosa non si era avvitata in su! "

Al termine di tale riunione, il direttore del programma uscire con un preavviso di zero-day. Così mi è stato ora incaricato di questo. Nel corso della prossima settimana, ho una petizione sia di Adaptec e LSI Logic per fornire un ingegnere per una chiamata in conferenza, semplicemente per ridere in faccia del direttore commerciale.

In ultima analisi, hanno obbligato, e ha tenuto la loro fine del patto. Ed entrarono in dettaglio come ridicolmente irrealizzabile fosse. Il ragazzo da LSI è stata particolarmente dura - non l'ha fatto di zucchero cappotto nulla.

Non ho avuto per implementare la funzionalità. Un ho dovuto implementare è stato un regime di sicurezza personalizzato su richiesta di un cliente, che avrebbe permesso loro di attivare o disattivare qualsiasi dei controlli dell'applicazione - su un controllo da basi di controllo - come visibile, disabili, abilitato, di sola lettura, o lettura-scrittura . In teoria, ci sono stati 146.000 combinazioni. E se avvitato accidentalmente da dire ... disattivazione di un gruppo di controllo, che avresti avuto effetti collaterali involontari. Inutile dire che, quando mi è stato dato l'ultimatum che doveva essere attuata, ho anche smesso con un preavviso di zero-day.

Si mi ha chiesto di cercare un prodotto commerciale che potrebbe trovare e bug fix codice sorgente automagicamente.
Ancora searching..since 2001).

Una volta ho avuto una specifica del cliente che ha letteralmente chiamato per il codice in grado di viaggiare a ritroso nel tempo.

Il mio datore di lavoro raccolto i dati per il cliente, e siamo stati a consegnarla in formato X ad intervalli di dieci minuti 09:00-17:00, tranne che per la consegna finale, che era in formato Y (solo X con un diverso piè di pagina). L'ho fatto solo che ... e fuori di testa. Stavamo raccogliendo dati a basso volume, e davvero avuto solo uno o due punti di dati per fornire in un dato giorno.

"QUIT SPAMMING US CON file vuoti !!!" loro piansero. "CINQUE K'S ogni dieci minuti ENCLOGULATES NOSTRO BANDTUBES!"

Va bene. Quindi, il mio codice controllato ogni dieci minuti, e consegnato solo se ci fosse qualcosa da consegnare. Mi sembra giusto.

"MA l'ultimo file devono essere in formato Y !!!" gridavano. "MODERNA TECNOLOGIA confonde e ANGERS US! Risolvere il problema o Noi battere con un MASTODON FEMORE! *"

(* -. E 'possibile che sto misremembering porzioni della conversazione)

"Allora, io sono solo per consegnare il file se c'è nuovi dati per fornire".

"SI".

"E alla consegna finale per il giorno si suppone sia un formato di file diverso."

"SI".

"Tranne Non ho modo di sapere quale file sarà l'ultimo della giornata fino alla fine della giornata".

"SI".

"Quindi l'unico modo per me per implementare questo è quello di scrivere il codice che va a ritroso nel tempo, alla fine della giornata per rifare il formato su quello che si rivelò essere la consegna finale."

"Avresti potuto IT RELAZIONE risultati sportivi? Abbiamo visto BACK TO THE FUTURE II. Biff Tannen ci rende felici".

mi sono rifiutato, in parte perché violare la causalità è una pratica immorale di programmazione, in parte perché CPAN.org non ha avuto un modulo che avrebbe lasciato fare a me. (Ho controllato). Alla fine, mi hanno permesso di inviare un file in formato Y, alla fine della giornata, indipendentemente dal fatto che avesse o meno i dati effettivi. Sono abbastanza sicuro che la loro larghezza di banda sopravvissuto il colpo.

Senza alcuna causa percepibile, mi è stato portato in un incontro privato, e ha detto di non verificare se il mio computer è stato monitorato - tra cui, mai e poi mai controllando il mio task manager per qualsiasi motivo. Ho chiesto se stavano monitorando il mio computer, ed è stato detto (più o meno) "questo è solo una cosa di prevenzione - si sa, il nostro avvocato ci ha detto di dire ai dipendenti su questo - ma si sa, non si può davvero dire - -. ma io non sono il monitoraggio subito "

(gomitata, credo che stavano monitorando il mio computer, non solo mentre loro mi dicevano, non per cercare eventuali programmi di monitoraggio. In realtà, poche settimane dopo, mi è venuto in anticipo e letteralmente guardato il mouse si muove intorno al mio schermo come se da remoto - così ho guardato attraverso la finestra del CEO e lo vide in remoto cliccando in giro sul mio computer dal suo computer portatile)

.

Una volta ho avuto una lunga "discussione" con un boss a punta dai capelli che ha insistito che abbiamo potuto conservare un 2 in un po 'tipo di dati perché era "una sola cifra."

La cosa più stupida che mi è stato chiesto di fare è probabilmente un zero riscrittura di un progetto molto grande. Era circa 350k linee, tutti i C (con un po 'mescolato in perl per gli script 'helper') e ha lavorato bene, non importa ciò che i clienti hanno fatto ad esso.

Quasi un anno dopo, abbiamo avuto:

  • Un sacco di funzioni che, in fondo ha fatto la stessa cosa come le vecchie funzioni
  • Non ci sono reali miglioramenti nella velocità o la funzionalità
  • Un ingombro di memoria leggermente più piccolo
  • Un eseguibile molto più grande
  • clienti Infastidito

In sostanza, abbiamo realizzato nulla che refactoring sensato non avrebbe potuto compiere. Ma il mio capo era felice, ci siamo liberati degli script di supporto.

Ritengo che sia lo spreco più eclatanti di tempo e di codice esistente che io abbia mai visto.

Cliente:. Stiamo usando il software database per un paio di anni, lo sviluppo delle proprie applicazioni con esso, e ti chiama di tanto in tanto per chiedere aiuto

Me:. Sì, apprezziamo fare affari con voi

Cliente: Già. Ogni volta che noi chiamiamo, ci dica come utilizzare una nuova funzione, o che ci aiuta a DEBUG nostro uso, o di fornire una soluzione per qualche problema.

Me: Certo, siamo sempre felici di essere di aiuto

.

Cliente:. Di tanto in tanto, il prodotto ha un bug in esso, e la vostra azienda lo fissa e ci dà un aggiornamento software

Me:. Facciamo del nostro meglio

Cliente:. Bene, che cosa abbiamo bisogno da voi ora è qualche garanzia che non avremo più problemi di alcun

Me: . . .

Mi è stato chiesto di scrivere in una presentazione del nostro software a un importante potenziale cliente multinazionale che abbiamo usato la tecnica di codifica "spaghetti code".

Naturalmente, siamo in Italia ... suona bene.

fare un certo lavoro gratuitamente.

Modifica il mio evidenziazione della sintassi colori per abbinare quelli utilizzati nel sistema di controllo della versione.

vedi Let:

programmi Scrivere in C ++

  1. senza l'uso di controllo di versione,
  2. non refactoring,
  3. no Boost,
  4. STL limitati (ho sostenuto e vinto su questo),
  5. utilizzare le librerie non verificata subappaltatore,
  6. senza un profiler di memoria (per lavori aiuto correzione subappaltatore),
  7. no unit testing,
  8. bastone a 3 nomi delle lettere per i nomi delle funzioni membro,
  9. nessun ambiente di test (VM non ammessi o) solo spingere alla produzione

Si può prendere questo 10 pagine del rapporto che ti ho chiesto di preparare un documento word e farne una presentazione di PowerPoint perché io sono davvero un pensatore visivo e non sarà effettivamente letto il rapporto scritto ti ho chiesto di fare?

Ok, voglio che la scansione questa immagine di una casa, quando torno, si dovrebbe essere in grado di mostrarmi la parte posteriore di esso.

"non mi piace il modo in cui funziona database Oracle. Perché non basta scrivere il nostro proprio database?"

(Certo, questo è stato più di 15 anni fa, ma ancora!)

Mi è stato chiesto di articoli di carico dal sito di un concorrente all'interno di un iframe che sarebbe dentro la pelle del nostro sito web, facendo sembrare come è venuto da noi.

Per quanto mi riguarda, il più pazzo (e molto probabilmente, più divertente) è stato

Vedere questo 10 milioni di linee di codice a (non aggiornata tecnologia web)? Scrivi un compilatore per convertirlo in un sito Asp.net lavoro.

Non è mai sputare fuori una versione funzionante (ovviamente, ho cercato di dire loro che era impraticabile), ma è stato divertente comunque.

Una delle principali caratteristiche di un'applicazione nostra azienda ha sviluppato è stata la capacità di cercare grandi quantità di documenti da parte del full-text del documento. Un concorrente ha fatto la seguente affermazione in una presentazione di marketing per uno dei nostri clienti,

La nostra tecnologia di ricerca è superiore perché non si limita a cercare il testo dei documenti, esso cerca anche le 'bit e byte' del file effettivo in forma binaria.

Si ha dato un esempio di come i ridicola repersentations decimali ASCII delle parole "avvio" e "barca" erano molto meno simili di quanto le stesse parole in forma binaria, quando confrontato le cifre numeriche effettive nella rappresentazione. Quindi cercare in base alle 1 e di 0 più precisamente riflessa come simili queste due parole apparivano visivamente, e quindi una maggiore richiamo.

Naturalmente è stato incaricato di ricercare questa tecnica, che presumo fosse il risultato di un marketing di ragazzo completamente incomprensione un qualche programmatore, e la stesura di una risposta che potremmo includere nella nostra proposta.

Si può scrivere una semplice voce di tempo e sistema di fatturazione per il nostro nuovo ufficio estero che utilizza un diverso leggi linguistiche, valutarie e fiscali?

Piccolo team di programmatori, capo ci vuole fare un sistema di prenotazione biglietti per una piccola compagnia aerea (in un tempo molto breve lasso di tempo, ovviamente). Squadra dice:

- come si può immaginare, avremo bisogno di alcuni tester per questo progetto

Boss dice:

- Non ti preoccupare, imparare dal settore automobilistico. Ricordano le auto di tanto in tanto: gli utenti potranno fare il test.

I era una parte di un team di supporto di mainframe che ha fatto turni con altre squadre di supporto in un data center. Dopo il turno avremmo di solito hanno un briefing con i dirigenti e la squadra del turno successivo. Un giorno il nostro nuovo direttore ha mostrato e ha posto la domanda: "Perché carico medio della CPU durante il vostro turno era solo il 72%, mentre precedenti spettacoli di turno vicino al 95% penso che se proviamo duro reale, potremmo finalmente raggiungere il carico della CPU al 100%?! "

Circa 12 anni fa, quando ero al college ho lavorato su una domanda di modellazione dei dati per Windows. Il progetto era quasi completa dopo circa 60.000 righe di codice Win32, si sa, il codice mira la piattaforma Windows. Poi il cliente ha detto l'applicazione ha bisogno anche di correre "sul web". Ha avuto un momento difficile comprensione come questo "piccoli minori" esigenze Un cambiamento potrebbe avere un grande impatto sul progetto. Ho iniziato da zero in Java, ma finito per quiting il progetto prima che fosse mai finito.

stavo lavorando a un grande progetto nel 1996, dove siamo stati segnando eventi sportivi in ??diretta. Questa conversazione è accaduto:

Boss:. Vai fuori alla sede per il prossimo evento

Me: Che cosa hai bisogno di me per fare

.

Boss:. Essere lì solo nel caso in cui

Io:? Nel caso in cui ciò che

Boss: Nel caso in cui il vantaggio tecnologico perde. modo di He troppo stressato e non so che cosa potrebbe fare.

Io: E se perde, cosa vuoi che io faccia

?

Boss: Basta tirarlo fuori di lì così tutti gli altri possono continuare a lavorare. Non mi importa come lo fai.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
scroll top