When you dd from Windows

I bought a 8GB SD card for my Raspberry Pi and happily dd’ed the Raspbian image to it. But it did not boot. @namp and @eliaschr suggested that I re-dd-ed (redid?) the image to the disk. But I know how to run dd(1), right?

Yes and no :(

I run dd.exe from a windows machine:

C:\TEMP> dd.exe if=2013-09-25-wheezy-raspbian.img of=\\.\e:

Ding! The above does not start writing from the beginning of the disk. It starts writing from the beginning of the E:\ partition. I dd-ed the image from a Mac and all boot well.

I suppose (but have not yet checked) that had I used the \\.\path\to\physical\drive path, I would not have bumped into this.

10 λεπτά

[ Έχω την εντύπωση πως το παρακάτω σχόλιο το έχω ξαναγράψει. Διάβασα αυτό και το θυμήθηκα, έψαξα το blog όμως και δεν το βρήκα, οπότε here goes: ]

Ένα από τα πράγματα που έμαθα από τη sage-members είναι πως είναι καλό να παίρνεις τον καφέ σου και να κάνεις βόλτα γύρω-γύρω τα γραφεία για ένα δεκάλεπτο. Οι χρήστες βλέπουν πως “είσαι εκεί” και μαζεύεις προβλήματα που μπορεί να υπάρχουν αλλά δεν τα έχεις ακούσει ακόμα (που σημαίνει πως θα τα ακούσεις όταν μεγαλώσουν και σκάσουν). Ίσως τα πιο πολύτιμα 10 λεπτά της μέρας. Σε γλιτώνουν από πολλές τηλεφωνικές διακοπές σίγουρα.

Η αλήθεια είναι πως δεν το κάνω κάθε μέρα πια.

[ Το είχα γράψει τελικά – Ου γαρ έρχεται μόνον ]

The Square Law of Computation

“Experience has shown that unless some simplifications can be made, the amount of computation involved increases at least as fast as the square number of equations. This we call the Square Law of Computation.” [source]

Whenever I see a n2 expression I dig. O(n2) seems to be a fine rough metric for a lot of things. And the above was first stated in 1975, almost five years before Metcalfe. Which reinforces my admiration to Metcalfe, for he was the first to link the complexity of a problem with value in such a back-of-the-envelope metric.

Having monit complement ansible

Here is a weird thing:

When running /etc/init.d/milter-greylist restart via ansible (either direct or via a playbook) it hangs. I had no time to debug this, so I reverted to the next best workaround since the machine was already running monit:

Have ansible distribute greylist.conf and then have monit restart the process. So here is a simple playbook:

- hosts: greylist
  user: root
  tasks:
  - name: copy local milter-greylist configuration to hosts
    action: copy src=/usr/local/etc/greylist.conf dest=/etc/milter-greylist/greylist.conf

and here is how monit finishes the task:

check file greylist.conf with path /etc/milter-greylist/greylist.conf
 if changed checksum then exec "/etc/init.d/milter-greylist restart"

Of course this is just a simple case of having the two cooperate. But once you get the hang of it, more elaborate schemes where ansible and monit can cooperate will pop out.

What Engineers Do Not Learn

The presentation bellow popped up in my stream thanks to @flowchainsensei:

The title is clearly inspired by the book What Engineers Know and How They Know It (it even stars in slide 21). Goldberg presents 7 basics that most have trouble dealing with. I have to say that reading those 7 slides scored home. My instant thoughts after every slide follow:

  1. Inability to ask: which reminded me of ESR’s “How to ask questions the smart way“.
  2. Inability to label: Terminology is a problem. So many times we see that the same word means different things to different people. As Goldberg says, we’re linguistically naive and this is a problem.
  3. Inability to model: Which reminded me of George Box’s “All models are wrong but some are useful”. All to often we take the (ill devised) model as the reality and expect the real life situation to behave as the model.
  4. Inability to decompose: Which reminded me of stuff that I am reading at the first chapter of “An introduction to General Systems Thinking“.
  5. Inability to measure: I’ll leave it without comment. I’ve had two measuring courses at NTUA. I returned to them after graduating. Thanks to a not so inspiring professor I realised the importance of measurement only after bosses asked about numbers.
  6. Inability to draw / visualise: I can’t say really much there. I dump my thoughts on paper always, but for years I was not. And I think the very first time I thought about that was when reading “Time Management for System Administrators“. But honestly the first thing I thought about when reading this slide was “Why a Diagram is (Sometimes) Worth Ten Thousand Words“.
  7. Inability to communicate: So what do you prefer? Write a report for upper management on a project done or work on the next cool project?.

For the finale I keep Goldberg’s remark that:

Companies do not pay $8500 for plugging in Newton’s Laws.

That is because when I was complaining to a TA that we are not actually learning anything that has to do with the work we’ll be doing “outside” he countered me with:

– “But you know Math. The others”, meaning those coming from a technical education background, “do not”.

Yeah, right but you know what? You still can be able to solve equations and not be able to model the problem properly. And that is the problem with most of the Math that we have been taught.

GanetiCon 2013

As I am writing these lines the first GanetiCon is running its final sessions on the design and future developments of Ganeti. It has been a wonderful three days workshop with the great assistance of Google, Skroutz (who provided the venue of the conference) and GRNET (makers of synnefo).

While to be able to truly gain from the workshop a familiarity with Ganeti was expected, even people with remote knowledge of how it works could follow the works. This was mostly because of the way Guido Trotter run the design discussions and @apoikos‘s comments during those. Even thought this was more of a developers’s workshop, it is a pity that not many “plain” system administrators attended. You do not often have the opportunity to meet people who write the software tools that you use. You do not often get the opportunity to discover how they think and what shapes their decisions. And you do not often have the opportunity to see this happening for software that demands scale.

Congratulations to all who took the stand to present their work (and IMHO especially to good friends @apoikos and @kargig) and to all those who took the effort to attend.

I’ll leave you all with an idea: Hold the second GanetiCon at the same venue!

All presentations from GanetiCon 2013

Management by wandering around in the cloud?

I first heard “Management by wandering around” years ago when I read this article about the Microsoft Windows 2000 team:

“Decisions in 10 minutes or less, or the next one is free.” He wandered the halls and asked people, “What is a decision? It’s a tool to remove confusion! Are you confused? If so, then make the decision and let’s move on!”

I use to practice this as a System Administrator armed with coffee and strolling around desks of colleagues in order to find out what goes wrong and they are reluctant to communicate via any other means than coffee. It also makes your users understand that you care. And helps them relieve some pressure off when you made urgent changes that you did not have time to communicate. Most importantly you remove obstacles from their work when they are present. So I walk around offices with a coffee mug. Which raises the question:

– Now that teams become more and more decentralised, even small ones, and operating from different time zones, what is the equivalent of walking around management? Both for project and systems managers?

Skype calls and hangouts are good for scheduled events but do not quite help the same way as wandering around and solving problems for others.

I am open to ideas.

Far from the tree

TL;DR: An impressive monumental work; read it if you have the guts

A good friend lent me a copy of “Far from the tree” to read. After reading the introduction (entitled Son) and the first chapter (Deaf) I told him “I understand why you gave this to me; I do not understand why you chose to read it”.

This is a book about children and their parents. About children that “fall far from the tree” and how their parents deal with what the author calls “a chronic state of sorrow” in their struggle to provide for their children’s needs. It is also a book on patterns Identity. If you are in the business of selling identity access management products you owe it to yourself to read the introduction of this book. You will understand that what you sell is not about identity at all. You will make more careful use of the word; at least when you come and sell to me.

The chapters of the book deal with the Deaf, Dwarf, Down Syndrome, Autism, Schizophrenia, Disability, Prodigies, Rape, Crime and Transgender. As I said the book is about patterns for in the 10 years that it took the author to finish it, through his extensive research and interviews he was able to locate patterns in behaviors. To this point the book is helpful to computer scientists for we abstract in order to be precise and we see this in a completely different domain than we are used to. I admit to not reading all the chapters. I read Deaf, Autism, Schizophrenia because I have some familiarity with them. I also read the introduction (“Son”) and epilogue (Father). Why they are named as such is a spoiler.

This is one of the best non fiction books I have ever read. I do not know whether I can recommend this to someone else or not. This is a tough book with real stories and struggles that break your heart. You have been warned. Even I as I was reading the following lines was not prepared to face the reality of them due to an accident two days later:

“You’ve had the star quarterback. He’s run over by a truck, breaks every limb in his body. Your hope now is not that he’ll be a star quarterback, but that he will walk again.”

Like I said, read it if you have the guts. It will help you better understand others and yourself. It will teach you respect in ways you never thought you needed.

Thank you X for lending this to me.