My plan to overcome systemd anxiety

systemd are not very compatible yet. But it is here to stay and one can hold back their machines for only so much. Inevitably, no matter how much you delay it, you will migrate to operating system versions that support it. So here is the path that I figured out for smooth coexistence until systemd grows on you:

Do most of if not everything that you would try to do with systemd with something like puppet or ansible by applying playbooks locally. Configuration management / orchestration software already knows how to handle systemd and they do it well. Take advantage of that then.

5th ISACA Athens Chapter Conference

After a two year hiatus, I am writing again a small post for the 5th ISACA Athens Chapter Conference which I had the joy to attend in full.  The previous two, I tried to attend but in 2013 I got dragged out of the conference due to an emergency and in 2014 I got sick.

The conference had a great start with Prof. D. Gritzalis delivering a speech with his usual performance (worth studying when you speak in front of an audience). His address was focused around Aristotle’s “high honors are awarded to one who kills a tyrant, but not to one who kills a thief“.

Then the floor was given to Jim Manico who spoke about the development of the OWASP Application Security Verification Standard 3.0 [pdf]. If there’s one thing to grab from Jim’s keynote, that would be “have dedicated security sprints” to address problems in your code.

Vasilis Katos gave once more a stellar performance on stuff they work on at Bournemouth University. A true loss for Greece, he traded war stories of stuff they have dealt with online regarding criminal activity. He covered stuff ranging from cyber-psychology, the fading distinction between online and offline life up to money laundering and murder.

Generally I get bored when leadership talks are given. They take more than 20 minutes to arrive to the conclusion (most of the time obvious to me) if any. But this time. Artemis Miropoulos after eating away his twenty and more minutes (of course) left the audience with two valuable pieces of advice: (a) If you feel you ever wronged someone, go and ask for forgiveness. Grudges, even for the most idiotic reason tend to stay unresolved for years and (b) take care of your profile and have one in the first place. Not having any, which in Engineering often is the result of humility, not only harms your career, but also the careers of the people working under you. You owe it at least to them.

My longtime friend from college years, Dr. Athena Bourka delivered a speech about Big Data and Privacy and the effort needed to keep those two in balance. Like many others before me, I believe this is a lost game (she doesn’t) but I too believe we need to work on this, despite the game being lost.

The closing keynote was delivered by ISACA’s Vice President Rosemary Amato. I wish I had her notes because the first five minutes summarised all of the conference and I would have written a better post than just hailing stuff I loved listening to.

That’s just about it. I tried to blog how I felt during the conference since you can find all the slides at the conference site. If you want to see what was being twitted the whole time, just inspect #isacaathconf15.

Ηλεκτρονικές Εκλογές ΤΕΕ – part 2

[ Αυτό το κείμενο γράφτηκε λίγο μετά την 2006/11/26 μετά από τις πρώτες εκλογές στο ΤΕΕ με ηλεκτρονική υποβοήθηση. Δεν είχα πατήσει ποτέ το publish ως σήμερα, αλλά το σημερινό φιάσκο της ΝΔ, η χρονική απόσταση και το γεγονός πως δεν είμαι στο ΤΕΕ μου δίνουν μια ευχέρεια να το κάνω. Για όποιον ενδιαφέρεται, δεν είχα κεντρικό ρόλο στο έργο. Η ημερομηνία των εκλογών συνέπιπτε με την άφιξη του πρώτου πελαργού. ]

Ιστορία γράψαμε μια και η καταμέτρηση έγινε ηλεκτρονικά και είναι η πρώτη που έγινε στη χώρα και σε τέτοια κλίμακα. Ίσως δεν είναι τόσο πετυχημένη στα μάτια πολλών (σε καμία περίπτωση δεν ανταποκρίνεται στις προσδοκίες μου), δεν παύει όμως να είναι μια δύσκολη και heroic system administration story για εμάς που ήμασταν μέσα σε αυτή. Τα προβλήματα πάρα πολλά. Αυτό το κείμενο δεν καταπιάνεται με κανένα από τα προβλήματα που δεν άπτονται της ηλεκτρονικής διαδικασίας (π.χ. πολιτική ανάλυση των εκλογών του ΤΕΕ, ενστάσεις κ.λπ.) παρά μόνο με τα προβλήματα που διαπιστώσαμε κατά την ηλεκτρονική διαδικασία και όπως την έζησα από το γραφείο μου:

  1. Το task ήταν τιτάνιο για το μέγεθος του υποστηρικτικού μηχανισμού. Τα εκλογικά τμήματα είναι 159. Αυτό σημαίνει άμεση διαχείριση 2×159 ανθρώπων, συν τους τεχνικούς που είχε stand-by ο προμηθευτής του εξοπλισμού. Όλοι αυτοί οι άνθρωποι ήταν διαφόρων επιπέδων τεχνικών ικανοτήτων και διάθεσης.  ~318 βαθμοί ελευθερίας.
  2. Υπήρχαν διαθέσιμα 180 PC. Όλα ίδια και όλα φτιαγμένα με την ίδια μήτρα. Θα περίμενε κανείς πως θα είχαν και κοινή συμπεριφορά. Αμ δε! Οι drivers των scanners σε μερικά εκλογικά κέντρα χάνονταν ανεξήγητα κατά τη διαδικασία και έπρεπε να γίνει επανεκκίνηση.
  3. Για να παίζουν κάποια PC έπρεπε α) να αλλάξει PCI port το PSTN modem ή β) να αφαιρεθεί πλήρως. Διαφορετικά, BSOD.
  4. Παρόλο που όλα έγιναν install με το ίδιο image, μερικά ξεκίναγαν με αυθαίρετα settings για το firewall.
  5. Το OpenVPN για να παίξει εγκαθιστά ένα virtual Ethernet driver. Επίσης ανεξήγητα σε μερικά PC αυτός ήταν disabled (ενώ στις δοκιμές της προηγούμενης μέρας έπαιξε κανονικά!). Έπρεπε να γίνει enable με το χέρι.
  6. Και το τελειωτικό: Ενώ δεν υπήρχε κανένα φαινομενικό πρόβλημα με το OpenVPN, δεν είχαμε σύνδεση. Ούτε με reboot. Μετά από shutdown όμως είχαμε.
  7. Όσο συμπαγές και μικρό να είναι το documentation δεν θα το διαβάσουν όλοι.
  8. Ακόμα κι αν υπάρχει ένα δηλωμένο τηλέφωνο επικοινωνίας, όλη η Ελλάδα θα ανακαλύψει το δικό μου.
  9. Το χειρότερο από όλα: Εκτός από ερωτήσεις για την ηλεκτρονική διαδικασία μας γίνονταν και ερωτήσεις επί της εκλογικής διαδικασίας. Φανταστείτε λοιπόν κάποιον που ρωτάει τρία πράγματα μαζί και πρέπει να του πεις “Ξέρετε, αυτά είναι θέματα της Κεντρικής Εφορευτικής, πρέπει να μιλήσετε εκει”. Χαρά ε; Ειδικά αν για να λυθούν αυτά πρέπει να κάνει τρία (3) τηλέφωνα και όχι ένα.

Δεν υπολογίζω στα παραπάνω τραβήγματα καλωδίων ή άλλους λάθος χειρισμούς, γιατί είναι αναμενόμενοι. Ακόμα και αυτά όμως ήταν αρκετά για να υπερχειλίσει το τηλεφωνικό μας κέντρο (είναι ώρα για το asterisk πια) τις πρώτες ώρες και πριν ακόμα ξεκινήσουν τα scannαρίσματα όπου:

  1. Ο DBA μας έδωσε ρεσιτάλ restore (μερικά over PSTN, άρα όχι τόσο άνετα). Είδαμε database errors που δεν είχαμε ξανασυναντήσει ποτέ. Το επόμενο βήμα είναι να κάνουμε forensic restores.
  2. Είδαμε απίστευτα κολλήματα στο scan. Δεν τα είδαμε στο software development, δεν φάνηκαν στις εκπαιδεύσεις, δεν φάνηκαν καν στο test-event και ήταν οι ίδιοι άνθρωποι (και ναι ξέρουμε να στήνουμε σενάρια) που τα έτρεξαν όλα.
  3. Αποκρυπτογράφηση του ίδιου προβλήματος με 30 διαφορετικές περιγραφές (π.χ. σε εμένα πρόβλημα στον scanner έφτανε ώς πρόβλημα σύνδεσης στο δίκτυο) σε 5 διαφορετικούς ανθρώπους.

Θα πάρω όλη την υπόλοιπη κανονική μου άδεια και θα αφοσιωθώ στον παιχταρά μου (== adamo version 2.0).

(part1)

Red Moon Rising: Sputnik and the Hidden Rivalries that Ignited the Space Age

Up until a month ago I never knew about the book. Good friend Nikos mentioned it over beer. I was sold on it immediately and bought the kindle version.

I’ve read two more books that cover a lot of the political and technological situation of this era (that is when Eisenhower and Khrushchev held the helms). Where Wizards Stay Up Late about Internet’s prehistory and even more Red Plenty provide angles on what was happening in the US and the USSR at the time.

Among all the people who know who von Braun is, how many have ever heard of Korolev? A man whose name was a state secret? What was it that made him sell the Sputnik to the Premier where in fact he demanded ICBMs? And why did the USSR had such a pressing need for missiles? What was the engineering gap that the two superpowers wanted to bridge? How did the military-industrial complex, or big egos, ambitions and personal rivalries affect the space race? Because nothing was done in the name of science.

If you are like me and remember the SALT II and the SDI here is a glimpse on why these ever happened. The book comes with a lot of notes if you want to delve more into the history, biographies, physics, engineering, politics or even economics of rocketry. The book is literally a launchpad to many directions itself.

PS: How were trajectories calculated without computers? Would you be able to fly a “steampunk” drone today with a slide-rule like they did with their rockets? Think about that.

Μια ιστορία με τον Boole

200 χρόνια σήμερα από την γέννηση του George Boole (σε περίπτωση που δεν καταλάβατε το σημερινό Google Doodle δηλαδή) και θυμήθηκα μια ιστορία:

Κάπου 20 χρόνια πριν εξετάστηκε ένας φίλος μου στην διδακτορική του διατριβή και κάποια στιγμή φτάνει η ώρα των ερωτήσεων. Υπήρχε ένας μέλος ΔΕΠ που ήταν κάπως πιο επιθετικό στις ερωτήσεις (χωρίς να υπάρχει κάποιος ιδιαίτερος λόγος) και κάνει την κλασική ερώτηση:

– Και που μπορεί να είναι χρήσιμα όλα αυτά στον πραγματικό κόσμο;
– Τι να σας πω. Και ο Boole όταν έφτιαξε την Άλγεβρα του, δεν περίμενε να υπάρχουν ηλεκτρονικοί υπολογιστές!
– Τολμάς να συγκρίνεις τον εαυτό σου με τον Boole;

Για όποιον ενδιαφέρεται, An Investigation in the Laws of Thought.

meetings and sabotage

It’s been a while since I’ve written any blog post and even more since I’ve written ten lines or more, so today I will copy something from this pdf that popped in my twitter stream (unfortunately, I didn’t keep a note of the tweet):

  • Insist on doing everything through “channels.” Never permit short-cuts to be taken in order to expedite decisions.
  • Make “speeches,” Talk as frequently as possible and at great length., Illustrate your. “points.. by long anecdotes and accounts of personal experiences. Never hesitate to make a few appropriate “patriotic”-comments.
  • When possible, refer all matters to committees, for “further study and consideration.” Attempt to make the committees as large as possible – never less than five.
  • Bring up irrelevant issues as frequently as possible.
  • Haggle over precise wordings of communications, minutes, resolutions.
  • Refer back to matters decided upon at the last meeting and attempt to re-open the question of the advisability of that decision.
  • Advocate “caution.” Be unreasonable and urge your fellow-conferees to be “reasonable” and avoid haste which might result in embarrassments or difficulties later on.
  • Be worried about the propriety of any decision – raise the question of whether such action as is contemplated Hes within the jurisdiction of the group 01’whether it might conflict with the policy of some higher echelon.

2-3

Confirmation bias: Στο 1-3 με την Βέρντερ κοιμόταν ο kid[0] δίπλα μου στον καναπέ. Στο 2-3 με την Arsenal κοιμόταν ο kid[1] δίπλα μου στον καναπέ. Στο 2-1 με την PSG στο 90′ κοιμόταν δίπλα μου η wife[0] και έσπασα και μια λάμπα.

Είναι να μη σε πιάνουν τα γούρια μετά :)

Using a BlinkStick to monitor the health of an ElasticSearch cluster

BlinkStick is a USB powered LED that can be driven via a simple API from a programming language like Python. Since the status of an ElasticSearch cluster can be determined using three colors (green, yellow, red) a BlinkStick can be a nice visual aid in your monitoring infrastructure.  An easy proof of concept is to use the BlinkStick Website API that allows, given a token, for the color of your BlinkStick to be set remotely by your monitoring system for example. You can find such a proof of concept here: https://github.com/a-yiorgos/elastic-blink

BlinkStick, soldered
BlinkStick, soldered

Of course if you want a more elaborate and secure setup, it is possible. I had my 15 minutes of fun. YMMV.