Saturday, January 30, 2010

τέσσερις ερωτήσεις

Έχω ένα φίλο που δουλεύει για την Google Inc. Την τελευταία φορά που τον είδα (την πρωτοχρονιά), ανέφερε ότι η οικονομική κρίση τελείωσε και ότι η Google κάνει μαζικές προσλήψεις. Ανέφερε ακόμη ότι είναι σημαντικό να σε προτείνει κάποιος που ήδη δουλεύει για την Google, και ότι αν σε προσλάβουν παίρνει referral bonus περί τα 4000 αμερικάνικα δολάρια. Οπότε, του έστειλα το βιογραφικό μου για να το προωθήσει στην Google (μπας και μου βρουν καμιά δουλειά που να μου ταιριάζει, πχ να γυαλίζω τα πόμολα από τις πόρτες των γραφείων των μηχανικών).

Είκοσι μέρες μετά, ένα βροχερό πρωινό μιας παρασκευής του Γενάρη, έρχεται ένα email από κάποιον Terry από τα γραφεία της Google στην εξωτική Ελβετία, και μου λέει, αν γίνεται παρακαλώ, να κανονίσουμε ένα τηλεφωνικό ραντεβού για μια πρώτη επαφή και ένα test. Η θέση για την οποία μιλούσαμε δεν ήταν τελικά γυαλιστής πόμολων, αλλά Site Reliability Engineer, ένας από αυτούς που υποστηρίζουν (μάλλον με τις δυνατές πλάτες τους) τους χιλιάδες υπολογιστές και software που τρέχουν τα gmail, google maps, picasa κτλ.

Ο Terry λοιπόν, με παίρνει τηλέφωνο την προκαθορισμένη ώρα και μέρα, και ξεκινάει να μου λέει τι και πως, και εντός τριλέπτου φτάνουμε στις βασικές ερωτήσεις που θέλει να μου κάνει για να δει αν όντως είμαι αυτός που λέω ότι είμαι.

Για να δούμε τι θ' ακούσουμε, λέω από μέσα μου (δεν έχω ιδέα τι είδους ερωτήσεις κάνουν σε αυτές τις περιπτώσεις) και ξεκινάει.

"What is the average number of comparisons of the Quicksort algorithm, and what is the worst case?", λέει ο Τέρης. "Σκατά" σκέφτομαι εγώ. Τέτοιου είδους ερωτήσεις θα είναι. Ψάχνω τη μνήμη μου για λίγο, και του λέω "αν θυμάμαι καλά, είναι O(log(n)), αλλά για την χειρότερη περίπτωση δεν έχω ιδέα".

"Και αυτό σωστό", μου λέει ο Terry, αν και δεν ήταν. "Θα σου δώσω μισό βαθμό".

"Place the following in order of execution speed: CPU register read, disk seek, context switch, memory read", με ρωτάει μετά ο Terry.

"Αν και δεν έχω την παραμικρή ιδέα τι είναι το context switch, μαντεύω ότι η σωστή σειρά είναι CPU register read, memory read, context switch, disk seek" του λέω εγώ.

"Μάντεψες σοφά" μου λέει ο Terry, "παίρνεις έναν βαθμό"

"Μπράβο μου", σκέφτομαι εγώ.

"What type of variable is a void star (void *) variable in C/C++", αποφασίζει να ρωτήσει μετά ο Terry.

"Generic pointer" λέω εγώ μετά από λίγη σκέψη. Έχω τώρα δυόμιση βαθμούς. Αναρωτιέμαι πόσες ερωτήσεις θα κάνει, και στους πόσους βαθμούς κερδίζω το ταξίδι.

"We have an array of 10000 16bit integers. We also have infinite memory. What would be a really fast way to count all the set bits?"

"Fuck me gently with a chainsaw", σκέφτομαι εγώ. "Εκτός από τον προφανή τρόπο (να κοιτάξεις έναν-έναν τους αριθμούς, και για κάθε έναν να σαρώσεις τα bits του) δεν μου έρχεται τίποτα στο μυαλό μου αυτή τη στιγμή" του λέω εγώ με θράσος.

"Λυπάμαι, χάσατε" μου λέει αυτός. "Παρολίγο να κερδίζατε ταξιδάκι στην Ζυρίχη. Εύχομαι καλύτερη τύχη την επόμενη φορά. Αν σας κάνει να νιώσετε καλύτερα, αυτή ήταν μια δύσκολη ερώτηση".

Ένιωσα πολύ καλύτερα με τη μία. Μετά του πρότεινα να μοιραστούμε στα τρία τα τέσσερα χιλιάρικα του referral bonus (εγώ, ο Terry και ο φίλος που με πρότεινε), αλλά δεν δέχτηκε.

Και έτσι (όπως λέει και ένας άλλος φίλος) έληξε η προσπάθεια μου να δουλέψω για την Google.

(Όσα-δεν-φτάνει-η-αλεπού-dept.: Σιγά μην πήγαινα μες στο καταχείμωνο στους Ελβετούς για να εντοπίζω και να αλλάζω καμένους δίσκους στα server rooms της Google. Να βρούνε κανένα ντόπιο γαμωτάκι.)

(Και-οι-σωστές-απαντήσεις-ήταν-dept.: Quicksort running time is O(n log(n)), worst case O(n²), και μια καλή ιδέα για γρήγορο bit counting είναι να έχεις έναν πίνακα στον οποίο έχεις προϋπολογίσει τον αριθμό των αναμμένων bits σε κάθε δυνατό 16bit ακέραιο (που είναι μόλις 65536). Όλα αυτά τα διάβασα στο Internet μετά το τηλεφώνημα. Ακόμη δεν κατάλαβα τι ακριβώς είναι το Context Switch όμως.)

(Σκέψεις-&-Εκμυστηρεύσεις-dept.: Το παίζω ψύχραιμος τώρα, αλλά από τη μέρα που πήρα το email μέχρι την ημέρα της τηλεφωνικής συνέντευξης, δεν σκεφτόμουν τίποτα άλλο. Επίσης, αυτή είναι μια εξαιρετικά ελεύθερη απόδοση αυτών που πραγματικά συνέβησαν)

Friday, January 22, 2010

google suggest



Προσπαθούσα να δείξω στον ξάδερφο μου πως να χρησιμοποιήσει έναν browser για να βρει πράγματα που τον ενδιαφέρουν, και ξεκίνησα δείχνοντας του ότι η Google πια, αν ξεκινήσεις να γράφεις τι ψάχνεις σου προτείνει πράγματα που έχουν ψάξει οι άλλοι που ταιριάζουν με το δικό σου.

Στην αρχή δοκίμασα να ξεκινήσω να γράφω "μεταχειρισ" και έδειξε για "μεταχειρισμένα αυτοκίνητα θεσσαλονίκη" (που με κάνει να υποθέσω ότι λαμβάνει υπόψη του και την γεωγραφική περιοχή από την οποία γίνεται το ερώτημα).

Μετά όμως δοκίμασα από περιέργεια να γράψω "πως να", και μου έδειξε τα παρακάτω...


Υπάρχουν μάλλον αρκετές γυναίκες εκεί έξω που δεν ξέρουν πως να μείνουν έγκυες;

Sunday, November 08, 2009

το πιο άχρηστο αντικείμενο στο σπίτι



Μια βούρτσα ξυρίσματος, που μου είχε χαρίσει πριν από χρόνια ο παππούς μου.

Friday, November 06, 2009

σέρνερ

Σέρνερ, ο αργός server (ο σέρβερ που σέρνεται). Από το slang.gr, που αρχίζω να θεωρώ ότι θα αποτελέσει μέρος της πολιτιστικής κληρονομιάς της χώρας.

Labels:

Saturday, October 31, 2009

σταυρομαλακία


Η άχρηστη πληροφορία της ημέρας: Το google δεν έχει αποτελέσματα για την λέξη "σταυρομαλακία".

(για την περίπτωση που κάποιος αναρωτιέται, σήκωσα την φωτογραφία από το επίσημο site του Keith Haring)

Sunday, October 18, 2009

συσκευή υπαγορεύσεως

Η ελληνική απόδοση του digital voice recorder: ψηφιακή συσκευή υπαγορεύσεως. Και όχι μαγνητόφωνο.

(υπάρχει πάντα και το "δημοσιογραφικό εγγραφής", που δεν λέει ούτε τι είναι, ούτε τι καταγράφει)

Γιατί όχι "ψηφιακός καταγραφέας φωνής"; ή "ψηφιακός εγγραφέας φωνής";

Ποιος τις κάνει αυτές τις μεταφράσεις;

Sunday, August 23, 2009

electric sheep

Διαβάζοντας το superuser.com, το νεοσύστατο site ερωτήσεων/ απαντήσεων των Spolsky και Atwood, ανακάλυψα ότι ο πιο δημοφιλής screensaver στους αναγνώστες του site είναι κάποιος με όνομα Electric Sheep (αναφορά στο γνωστό βιβλίο του Philip K. Dick).

Και μόλις τον εγκατέστησα ανακάλυψα ότι όντως είναι εντυπωσιακότατος...

Friday, August 21, 2009

70

Ανακάλυψα, ότι δεν μπορείς να πάρεις δάνειο που θα αποπληρώσεις σε μερικά χρόνια, αν έχεις φτάσει την ηλικία των 70. Οι τράπεζες θεωρούν ότι κατά πάσα πιθανότητα, δεν θα ζήσεις αρκετά χρόνια ακόμη για να το ξεπληρώσεις.

Monday, April 06, 2009

ραιδεστός

Ήθελα να επαληθεύσω μια διαδρομή σήμερα, και πήγα και έγγραψα "Ραιδεστός" στο Google Maps. Έγγραψα στα ελληνικά, υποθέτοντας ότι θα με πάει στη Νέα Ραιδεστό έξω από τη Θέρμη. Με πέταξε στη μέση του Tekirdağ, που είναι η Παλαιά Ραιδεστός στη Τουρκία...