You can teach an old dog new tricks

Τον “παλιό καιρό” εάν κάποιος ήθελε να “κλειδώσει” ένα χρήστη, έκανε vi /etc/passwd, έβαζε ένα αστεράκι (ή για ποιο ευδιάκριτα το string *LK*) στο password field και ήταν ΟΚ. Ναι υπήρχε και τότε το vipw αλλά σιγά μη το χρησιμοποιούσε κανείς (άσε που το vipw στο Solaris ήταν εκνευριστικό).

ΟΚ, κάποια στιγμή έπρεπε να μη γίνεται αυτό “χεράτα” αλλά ημιαυτόματα, οπότε μερικοί από εμάς χρησιμοποιούσαμε παραλλαγές του παρακάτω one-liner:

# sed -e ‘s/^yiorgos:\([^:]*\):\(.*\)/yiorgos:*LK*:\2/’ /etc/passwd > /etc/passwd- && mv /etc/passwd- /etc/passwd

(Ναι υπήρχε περίοδος που το /etc/shadow δεν υπήρχε ακόμα)

Κάποια στιγμή ένας φίλος και ενώ τελείωνα μια εγκατάσταση Debian με είδε να γράφω:

# echo ‘user:*LK*’ | chpasswd -e

– Γιατί το κάνεις αυτό;
– Για να κλειδώσω το χρήστη ρε συ
– Εγώ τρέχω passwd -l user

Στο απορημένο μου βλέμμα, ο φίλος απάντησε:

– Μου αρέσει να διαβάζω τα manpages των παλιών εντολών για να βλέπω τι άλλαξε.

RFC3330 – Special-Use IPv4 Addresses

Χτες η οικογενειακή βόλτα μας έβγαλε και από το Athens Heart. Ήταν αρκετά ευχάριστη η διαπίστωση πως παρέχει wireless access. Δοκιμάζοντάς το, και αφού συμφώνησα με τους όρους χρήσης, παρατήρησα το ακόλουθο redirect:

http://1.1.1.1/agree.cgi

Ένα απλό whois lookup στο ARIN μας δείχνει πως το 1.0.0.0/8 (και άρα και το 1.1.1.1) είναι reserved (και εάν δεν έχει αδυνατίσει η μνήμη μου τα παλιά τα χρόνια ήταν εκχωρημένο στο BBN):

NetRange:   1.0.0.0 - 1.255.255.255 
CIDR:       1.0.0.0/8 
NetName:    RESERVED-9
NetHandle:  NET-1-0-0-0-1
Parent:     
NetType:    IANA Reserved
Comment:    
RegDate:    
Updated:    2002-09-12

Το RFC1918 υπάρχει για κάποιο λόγο. Και ο λόγος αυτός είναι όταν χρειαζόμαστε “πρόχειρες” ή μόνιμες αλλά μη ανακοινώσιμες διευθύνσεις να μη βάζουμε ότι μας φανεί πιο εύκολο, ακόμα κι αν αυτό φαίνεται έτσι στα παραδείγματα στα manuals της cisco. Δεν επιλέγουμε το private address space για να κάνουμε τη δουλειά μας στην τύχη. Μπορεί να δουλεύει τώρα, αλλά αργότερα κάποια στιγμή δεν θα δουλεύει και η επίλυση του προβλήματος θα είναι δυσκολότερη.

Μπορεί να φαίνεται πως γκρινιάζω από τυπολατρεία, αλλά μου έχει τύχει. Κάποτε συνάντησα ένα δίκτυο στο οποίο αυτός που το είχε στήσει είχε ακούσει πως όποια διεύθυνση αρχίζει από 192 είναι διαθέσιμη. Όποιος έχει διαβάσει το RFC1918 ξέρει πως δεν είναι όλες διαθέσιμες για private addressing, αλλά μόνο το 192.168.0.0/16. Και ναι το συγκεκριμένο δίκτυο είχε πρόβλημα πρόσβασης σε άλλο δίκτυο που άρχιζε από 192 και φυσικά δεν μπορούσε να το δει και on top of that ήταν εξαιρετικά δύσκολο να αλλάξουν διεύθυνση σε ορισμένα τμήματα του δικτύου τους.

Για αυτό προσπαθούμε να τα κάνουμε σωστά τα πράγματα από την αρχή!

Και επειδή το RFC1918 δεν περιλαμβάνει όλες δεσμευμένες / ειδικές διευθύνσεις IPv4 αντιγράφω τον πίνακα από το section 3 του RFC3330:

3. Summary Table

   Address Block             Present Use                       Reference
   ---------------------------------------------------------------------
   0.0.0.0/8            "This" Network                 [RFC1700, page 4]
   10.0.0.0/8           Private-Use Networks                   [RFC1918]
   14.0.0.0/8           Public-Data Networks         [RFC1700, page 181]
   24.0.0.0/8           Cable Television Networks                    --
   39.0.0.0/8           Reserved but subject
                           to allocation                       [RFC1797]
   127.0.0.0/8          Loopback                       [RFC1700, page 5]
   128.0.0.0/16         Reserved but subject
                           to allocation                             --
   169.254.0.0/16       Link Local                                   --
   172.16.0.0/12        Private-Use Networks                   [RFC1918]
   191.255.0.0/16       Reserved but subject
                           to allocation                             --
   192.0.0.0/24         Reserved but subject
                           to allocation                             --
   192.0.2.0/24         Test-Net
   192.88.99.0/24       6to4 Relay Anycast                     [RFC3068]
   192.168.0.0/16       Private-Use Networks                   [RFC1918]
   198.18.0.0/15        Network Interconnect
                           Device Benchmark Testing            [RFC2544]
   223.255.255.0/24     Reserved but subject
                           to allocation                             --
   224.0.0.0/4          Multicast                              [RFC3171]
   240.0.0.0/4          Reserved for Future Use        [RFC1700, page 4]

For future reference.

“Ο υπολογιστής μου είναι αργός”

Την επόμενη φορά που θα ακούσω αυτό το παράπονο, η απάντηση στο ερώτημα:

– Και με ποιες εφαρμογές κάνεις τη δουλειά σου;

Η απάντηση απαγορεύεται να είναι της μορφής:

– Για Word, email και Internet

Ο υπολογιστής είναι μια χαρά.

Υ.Γ. Απαραίτητη διευκρίνηση: Το ερέθισμα για αυτό το post είναι πραγματικό. Παρόλο που στα σχόλια αναφέρομαι στο χώρο της δουλειάς μου, το παράδειγμα είναι από άλλο χώρο. Όχι πως δεν έχει εμφανιστεί και στη δουλειά μου n-φορές φυσικά…

PC magazine interview

Πριν από κάμποσο καιρό η Ζαχαρένια μου ζήτησε να κάνουμε μια συνέντευξη για το PC Magazine. 400 λέξεις μαζί με τις ερωτήσεις φαίνονται λίγες, αλλά είναι ωραία άσκηση (να πεις όσα περισσότερα μπορείς σε δοσμένο χώρο) και το real-estate της σελίδας είναι ακριβό.

Η συνέντευξη δημοσιεύτηκε στο τεύχος του Ιανουαρίου 2009. Ευχαριστώ και δημόσια για την πρόσκληση.

on problem solving

– Λογικά συμβαίνει αυτό και δεν παίζει

Πάνω στη δουλειά είμαι φωνακλάς. Τις περισσότερες φορές ίσως αδικαιολόγητα. Υπάρχει όμως ένα πράγμα για το οποίο φωνάζω συνέχεια:

– Μην κάνεις λογικές υποθέσεις!

Έχω παρατηρήσει πως στην διαδικασία επίλυσης προβλημάτων, όταν η πρόταση ξεκινάει με την λέξη “λογικά”, τότε από υπόθεση αυτόματα γίνεται απόδειξη με όλα τα διαθέσιμα στοιχεία να αγνοούνται και όλα τα ενδιάμεσα βήματα να παραλείπονται. Όταν όμως το guesstimation πέσει έξω (και είναι θέμα τεράστιας εμπειρίας να μην πέφτει κανείς έξω) αυτό σημαίνει πως πολύς χρόνος έχει περάσει χωρίς αποτέλεσμα.

Επειδή ονομάζουμε κάτι λογικό, δεν σημαίνει πως είναι κιόλας!

Αντιγράφω από το “Forensic Engineering Investigation“:

There should be a large foundation of evidence and facts at the bottom. These facts then form the basis for analysis according to proven scientific principles. The facts and analysis, taken together, support a small number of conclusions that form the apex of the pyramid.

Conclusions should be directly based on the facts and analysis, and not on other conclusions or hypotheses. If the facts are arranged logically and systematically, the conclusions should be almost self-evident. Conclusions based on other conclusions or hypotheses, that in turn are only based upon a few selected facts and very generalized principles, are a house of cards. When one point is proven wrong, the logical construct collapses.

Αποφύγετε να χρησιμοποιείτε τη λέξη “λογικά” όταν προσπαθείτε να βρείτε τι συμβαίνει:

– Λογικά συμβαίνει το Α επειδή έχω το Β

Προγραμματίζεται το μυαλό σε λανθασμένη πορεία. Αντί το Β να είναι πιθανό αίτιο, μετατρέπεται σε βεβαιότητα. Και αντί να ψάξει κανείς να βρει όλα τα πιθανά αίτια, προσπαθεί να αποδείξει πως το συγκεκριμένο Β προκαλεί το Α, ακόμα κι αν δεν το προκαλεί.

Update 2009/08/05: Έτυχε να διαβάσω το “Strong Inference” [pdf] το οποίο περιέχει αναφορές και από το “The Method of Multiple Working Hypotheses” του T. C. Chamberlin. Αντιγράφω σχετικά:

Chamberlin says our trouble is that when we make a single hypothesis, we become attached to it.

“The moment one has offered an original explanation for a phenomenon which seems satisfactory, that moment affection for his intellectual child springs into existence and as the explanation grows into a definite theory his parental affections cluster about his offspring and it grows more and more dear to him […] There springs up, also, an unconscious pressing of the theory to make it fit the facts to make them fit the theory.”

To avoid this grave danger, the method of multiple hypotheses is urged. It differs from the simple working hypothesis in that it distributes the effort and divides the affections.

Each hypothesis suggests its own criteria, its own means of proof, its own method of developing the truth, and if a group of hypotheses encompass the subject on all sides, the total outcome of means and of methods is full and rich.

Chamberlin thinks the method “leads to certain distinct habits of mind” and is of prime value in education. When faithfully followed for a sufficient time, it develops a mode of thought of its own kind which may be designated the habit of complex thought.

(previous)

Προς τα Δελτία Ειδήσεων

Ο ANT1 βάζει το Grey’s Anatomy κάθε μέρα στις 23:00. Δε χρειάζεται να κάνετε το ίδιο και εσείς. Σε λίγο θα μας δείξετε και εικόνα live από χειρουργική επέμβαση στον αστυνομικό.

On a side note, ας επαναλάβω λίγο τον εαυτό μου: Η πρόσφατη ενέργεια δείχνει πως οι (τηλε)δημοσιογράφοι συνεχίζουν να είναι φωτεινοί παντογνώστες. Οι ίδιοι άνθρωποι, στα ίδια παράθυρα, σχολιάζουν με την ίδια σιγουριά και authority από την παγκόσμια οικονομική κατάσταση, μέχρι τις ενέργειες, τη διάρθρωση και τη στελέχωση του Επαναστατικού Αγώνα.

Απορώ που τα καλύτερα Πανεπιστήμια του κόσμου δεν τους έχουν καλέσει ακόμα να διδάξουν τους φοιτητές τους.

twitter

Δεν είμαι fan του microblogging. Κυρίως γιατί δίνει την εντύπωση μιας ελεύθερης “χύμα” συζήτησης (που δεν κρατιούνται πρακτικά), ενώ δεν είναι έτσι: 10+ χρόνια με ενοχλούσε που άνθρωποι επέλεγαν να κρατάνε logs από τις συνομιλίες τους στο IRC. Τώρα στο twitter δεν χρειάζεται καν ατομική ενέργεια για αυτό.

Πέφτοντας όμως πάνω σε αυτό το post για το twitter phising, είπα να γραφτώ για να παρακολουθήσω το φαινόμενο “από κοντά”, να δω πως είναι τα direct messages κ.λπ. Και επειδή μπήκα στο τραίνο αργά, τα adamo, postmaster και yiorgos ήταν ήδη πιασμένα, οπότε ξέμεινα από handles! Μια και εδώ και καιρό διατηρώ ένα mirror του HAKMEM στο HAKMEM.net, γεννηθήτω hakmem.

Hello Twitter world!