Ζουν ανάμεσά μας #7: Ο Αλλαγούλης

0

 

Κυκλοφορεί σε συσκευασία “πελάτη”  ή “project manager” και ουσιαστικά αποτελεί το ίδιο, μαγικό προϊόν. Είναι ο άνθρωπος που θα σας ζητήσει μια μικρή τροποποίηση στη βάση δεδομένων ακριβώς 24 ώρες πριν το deployment, ώστε “να κρατάει ιστορικό επεξεργασίας των δεδομένων παραγγελιοληψίας”, “να μπορεί κάθε εγγραφή να σχετίζεται με περισσότερες από μία γεωγραφικές συντεταγμένες μαζί με τα λεκτικά των περιγραφών τους”, “να διαφοροποιεί το πεδίο περιγραφής ανάλογα με το αν το άθροισμα των ψηφίων του τηλεφώνου βγαίνει μονός ή ζυγός αριθμός” και άλλα τέτοια εξωτικά, πάντα με το αθώο ύφος του κουταβιού που έσπασε το βάζο με τα κουλουράκια. 

Ο Αλλαγούλης αδυνατεί να συσχετίσει τον όγκο εργασίας που απαιτεί το αίτημά του σε σχέση με το χρόνο στον οποίο το ζητάει. 

Ετσι, ενώ μπορεί να γνωρίζει από την αρχή του έργου ότι χρειάζεστε τριάντα πεδία για την φόρμα καταχώρησης που φτιάχνετε, θα σας ζητήσει αρχικά τα 25 και τα άλλα πέντε θα σας τα κρατήσει έκπληξη για το τέλος, με προτιμώμενο χρόνο ακριβώς τη στιγμή που θα έχετε “δέσει” τα δεδομένα σας με 50 άλλες διαδικασίες, αλληλοεξαρτώμενες μεταξύ τους, όπου μια αλλαγή θα απαιτήσει τροποποίηση της φόρμας, ΚΑΙ των 50 διαδικασιών, καθώς και 2-3 παραδιπλανών εφαρμογών που όλως τυχαίως βασίζονται στα δεδομενα της δικής σας εφαρμογής για να λειτουργήσουν. 

Και το κάνει με τόσο γλυκό τρόπο που - θεωρητικά - είναι αδύνατον να του αντισταθείς. Ορίστε ορισμένα pickup lines του Αλλαγούλη:

- Το ξέρω ότι είναι change request της τελευταίας στιγμής, αλλά μήπως θα ήταν δυνατό να...

- Πω,πω, ξέρεις τι πάθαμε; Δυστυχώς θα χρειαστεί να...

- Μωρε, μην με βρίσεις, αλλα πόσο δύσκολο θα ήταν να...

Το γεγονός ότι ο συνδυασμός χρόνου που απαιτείται, χρόνου που εκπνέει το deadline και πολυπλοκότητας του ζητούμενου θα σας αναγκάσει να εφεύρετε μερικά νέα design patterns, μια νέα γλώσσα προγραμματισμού, μια νέα αρχιτεκτονική μικροεπεξεργαστή, το αεικινητο, το μπέϊκον από ρίζες τζίνσενγκ και μια νέα μονάδα μέτρησης χρόνου με περίπου 259 ώρες ανά ημέρα δεν φαίνεται να τον απασχολεί στο ελάχιστο.

Μια ιδιαίτερα επικίνδυνη παραλλαγή του Αλλαγούλη είναι ο Πολυαλλαγούλης. Θα πρέπει να υπάρξει κάποια πρόβλεψη ώστε η ύπαρξή του να καταγγέλλεται και να τίθεται άμεσα σε περιορισμό από κάποια Οργάνωση Προστασίας της Ψυχικής Υγείας των Developers. Ο Πολυαλλαγούλης κάνει ο,τι είπαμε μέχρι τώρα, αλλά φροντίζει να “σπάει” τα ζητούμενα σε πολύ μικρότερα κομματάκια και να σας βομβαρδίζει σειριακά με αυτά. Για παράδειγμα:

“Μωρέ, πόσο δύσκολο είναι να βάλουμε ένα ακομα κουμπάκι που θα το πατάς και θα σου βγάζει μια συμπληρωματική φορμίτσα; Δεν θα έχει τίποτα, ένα δυο πεδιάκια.”

Εσύ πέφτεις στην παγίδα και το υλοποιείς. Εκανες το πρώτο βήμα προς την καταστροφή.

“Τώρα που την έχουμε τη φορμίτσα, μπορούμε να προσθέσουμε άλλα τρία πεδιάκια που το ένα θα τραβάει δεδομένα από την διπλανή database; Ελα, δεν είναι τίποτα, πέντε λεπτάκια υπόθεση”.

Και εσύ, ως χάνος, κάθεσαι με το στόμα να χάσκει και φτιάχνεις τα “πέντε λεπτάκια” σε μερικές ώρες.

“Πω, πω, ο πελάτης ζήτησε να μην έχουμε αυτή τη φόρμα εκεί αλλά να την ενσωματώσουμε στην κύρια φόρμα. Και τα δεδομένα που τραβούσε από την άλλη βάση να τα κάνουμε synchronize στη δική μας. Ελα μωρε, έτοιμο το έχουμε, απλά copy-paste θα το κάνουμε”.

Και το κάνεις. 

Γιατί είσαι καλό παιδί. 

ΜΙΑ ΜΕΡΑ ΠΡΙΝ ΤΟ DEADLINE.

ΤΑ ΜΕΣΑΝΥΧΤΑ.

ΜΕ ΠΕΝΤΕ ΑΛΛΑ DEADLINES ΠΑΝΩ ΑΠΟ ΤΟ ΚΕΦΑΛΙ ΣΟΥ.

Δεν χρειάζεται να σου πω βέβαια ότι ανακαλύπτεις ότι χρειάζεται να ξαναγράψεις περίπου τη μισή εφαρμογή και βρίσκεσαι επί πέντε ακομα συναπτά μεσάνυχτα να κάνεις debugging, να χτυπάς το κεφάλι σου σε οτιδήποτε ημίσκληρο υπάρχει γύρω (μην πονέσουμε κιόλας) και το υβρεολόγιό σου να έχει γίνει πλουσιότερο κατά τόσες λέξεις όσα τα views του Gangam Style. 

Κλαις; Περιμενε, δεν τελείωσα ακόμα.

Και εκεί που έχεις ολοκληρώσει ΟΛΗ τη διαδικασία και αφήνεις έναν αναστεναγμό ανακούφισης βλέποντας τον ήλιο (να ανατέλλει; να δύει; δεν ξέρεις πλέον) από το παράθυρο, τσουπ, ένα unread email στο mailbox σου από τον Πολυαλλαγούλη.

“Ακυρες οι αλλαγές, τελικά θα πάμε με το αρχικό”.

Σχόλια (18) -