Πόσο κακό μπορεί να προκαλέσει μια λάθος γραμμή κώδικα σε μια εταιρία; Η ιστορία του Marco Marsala αποδεικνύει πως στον προγραμματισμό, ακόμα και μια κακή εντολή μπορεί να αποβεί μοιραία.
Πριν πατήσει το «Enter» ο ιδιοκτήτης της εταιρίας web hosting έβλεπε την εταιρία του να λειτουργεί κανονικά. Μετά από το πάτημα του κουμπιού, όλα καταστράφηκαν. Εξαφανίστηκαν ως δια μαγείας μπροστά στα μάτια του, με τον άτυχο άνδρα να μην ξέρει τι να κάνει.
Γράφοντας μια εντολή, η οποία θα διέγραφε κάποια στοιχεία από τους server της εταιρίας, ο κ. Marsala δεν περίμενε πως θα… διέλυε τα πάντα. Ο απρόσεκτος χειρισμός του όμως, από ο,τι φαίνεται, έβαλε λουκέτο στην εταιρία του γιατί πολύ απλά διέγραψε και το παραμικρό στοιχείο. Τόσο η ίδια η εταιρία, όσο και οι ιστοσελίδες που διαχειριζόταν για τους πελάτες του, διεγράφησαν για πάντα.
Προσπαθώντας να διορθώσει την κατάσταση, ο άνδρας απευθύνθηκε σε ένα φόρουμ ειδικών στους servers, εξηγώντας τους πως κατά λάθος χρησιμοποίησε την καταστροφική εντολή στους υπολογιστές του. Η απάντηση που πήρε ήταν η χειρότερη δυνατή. Με αυτή τη λάθος γραμμή κώδικα, όχι μόνο κατάφερε να διαγράψει κάθε δεδομένο που υπήρχε, αλλά δεν άφησε και περιθώριο ανάκτησης των δεδομένων. «Λυπάμαι, αλλά η εταιρία σου είναι πλέον νεκρή» του απάντησε χαρακτηριστικά ένας από το φόρουμ.
«Θα έπρεπε πρώτα να διασφαλίσεις τα δεδομένα των πελατών σου, πριν τα βομβαρδίσεις» του είπε ένας άλλος, για να συμπληρώσει πως «δεν μπορώ να σκεφτώ πόσα λάθη μπορεί να έχουν γίνει, ώστε να καταφέρει κανείς να διαγράψει κανείς όλους τους server του, μαζί με τα back-up του».
Όπως εξηγεί ο Independent, ο κώδικας ήταν ο «rm -rf», ο οποίος έχει προγραμματιστεί ώστε να διαγράφει οτιδήποτε του πουν. Το «rm» δίνει εντολή κατάργησης όλων των δεδομένων, ενώ το «f» συμβολίζει το «force», δηλαδή την άμεση διαγραφή στοιχείων, χωρίς την εμφάνιση προειδοποιήσεων. Η απροσεξία, η άγνοια, αλλά και η βιασύνη, φαίνεται πως «έφαγαν» τον άτυχο άνδρα.
Μάλιστα, στους κύκλους των προγραμματιστών, ο συγκεκριμένος κώδικας αποτελεί inside joke, για τις ολοκληρωτικά καταστροφικές τους ιδιότητες. Κάτι που φαίνεται πως αγνοούσε παντελώς ο κ. Marsala. Το λάθος του ήταν πως δεν όρισε κάποια συγκεκριμένη περιοχή «προς διαγραφή» και έτσι η εντολή διέγραψε τα πάντα.
Διαβάστε ολόκληρο το άρθρο του Andrew Griffin του toy Independent με τίτλο «Man accidentally ‘deletes his entire company’ with one line of bad code» στα αγγλικά πατώντας ΕΔΩ