No slides?


This reached me through infowarrior (author of The PowerPoint Manifesto):

In a sign of how Carter intends to challenge his commanders’ thinking, he has banned them from making any PowerPoint presentations — a backbone feature of most U.S. military briefings.

Could it be that such presentations have become an integral part in briefings because of Patterns of Conflict? I cannot tell, but it sure is the most known military presentation outside the military world.

But where had I seen banning presentations before? Ah, Louis Gerstner at the decks:

At that time, the standard format of any important IBM meeting was a presentation using overhead projectors and graphics that IBMers called «foils» [projected transparencies]. Nick [a division head] was on his second foil when I stepped to the table and, as politely as I could in front of his team, switched off the projector. After a long moment of awkward silence, I simply said, «Let’s just talk about your business.»

dotplots – part1


[ This draft has been gathering dust for a few years, so I am posting it because what the heck, I’ve written it ]

I found out about dotplots while reading «Algorithms on Strings» (thanks to Bill Gasarch) an impressive book by the way, that easily makes it to the top-5 CS books I’ve read. It may well be one of the most complete works on the subject fulfilling simultaneously the needs of those who want to read the theory, see the proofs and/or write code (for it contains well understood pseudocode). But I digress.

Dotplots are tables that can be used to compare sequences (and therefore strings) and can reveal hidden patterns that may not be observable with other methods. They are in use for decades and known to people who work on computational biology (see for example «A high speed, high capacity homology matrix: zooming through SV40 and polyoma«)

Definition: Given two strings x and y with lengths m and n respectively we define a table Dot (the dotplot) of size m×n such that Dot[i][j] is true if x[i] equals y[j] and false otherwise.

Using the book example sequences ACGT and ATGCTACG we get the dotplot:


To interpret a dotplot we observe that diagonals express similarities and antidiagonals reveal the existence of a substring in reverse order. In a similar fashion horizontal lines represent insertions and vertical lines deletions that lead from one (sub)string to the other. One can therefore think of a dotplot as a kind of visual grep.

Dotplots find usage outside computational biology. They can be used for text analysis and even translated plagiarism! However, the screen real estate is not big enough to use for comparisons that involve for example the source code of the X Window System and techniques mentioned in «Dotplot: a Program for Exploring Self-Similarity in Millions of Lines of Text and Code» and «Dotplot Patterns: A Literal Look at Pattern Languages» can be used. Both papers contain really interesting applications of dotplots and explanations of the visual patterns that occur. See for example:

2 million lines of C code; an entire module of a telecommunications switching program. Source: Dotplot Patterns by J. Helfman

As shown by the ASCII example above, it is very easy to create proof-of-concept dotplots. But character based dotplots are limited by screen space. In fact I set out to create my own version of a dotplot program using gnuplot for the graphical stuff. Building a basic dotplotter is really easy once you read the techniques presented in Helfman’s papers but the result might not be as «good looking» as the ones that Helfman has done. To build cool dotplots, it may be needed to customize your software appropriately. For example, to dotplot source code, your program might need to have parsing capabilities for the language in question (for example two for loops might be similar to another when you look at it, but whitespace might make them look different to a simplistic dotplot builder).

[ There is not going to be a part2. Originally I wanted to experiment with dotplots and spam, but I am not a postmaster anymore, so I’ll leave it to the next interested postmaster. ]

I bought Comeblack when it popped up in Spotify while searching for Rock You Like A Hurricane. It contains 7 re-recordings (I particularly like The Zoo) of their best songs of my school years and 7 covers of songs by other artists, the best execution being Tainted Love for me.

A true Scorpions album that appeals to die hard fans IMHO. And as usual a compilation that does not contain any of their work with Roth.

It is funny how the mind connects things. I was listening to Fake It Till You Make It from the StartUp podcast and they brought up the Crazy Eights design(?) trick:

a crazy eight

a crazy eight

Well if you are to make a Crazy Eight, you are only just a step away from making a PocketMod to fold the design and put it in your pocket:

how to fold a pocketmod

how to fold a pocketmod

I am carrying a PocketMod with me all the time ever since I read Time Management for System Administrators by Tom Limoncelli. I dump anything I can think of, no matter how crazy on the PocketMod beside me. Plus it works almost like the (now defunct for copyright reasons) NotePod:

the notepod when it existed

the notepod when it existed

Funny brain connections in the morning I guess.

[ I recently wanted to locate this essay, only to find it in the web archive. I believe that it deserves preservation and maybe a lot more visibility ]

Friday, December 17, 1999; by Luke Tymowski.

A few minutes ago, I learned that I am now (in practice no less) absurdly poor.

I was at my machine, surfing, when I got a phone call castigating me for not paying my phone bill. I was looking for work — a job doing Windows database programming for corporations using Visual Basic, a language in which I had no say in the design. I’ve called it paying the rent and putting food on the table, or living. Living is what we have to do to keep paying bills. It’s a viscious circle, working to pay bills and buy food, working to live, living to work. It’s very cool.

Διαβάστε τη συνέχεια του άρθρου »

“Every program attempts to expand until it can read mail. Those programs which cannot so expand are replaced by ones which can.”Zawinski‘s Law

I shared something with a good friend of mine at Evernote, which made us observe that this makes the Evernote platform yet another Inbox for us to check for messages daily. We got the observation a little further and one could say that:

Every software as a service platform expands until it can support messaging among its users.

Instant or not so instant does not matter that much. But it seems to me that those who do not, do get replaced by competitors who support it.

[ Note: I’ve submitted this review for Social Network Analysis for Startups on O’Reilly’s site for the book also ]

The book is read very quickly if you decide not to work on the examples. Therefore it is a nice introduction to the subject, especially for people who do not want to go through Sociology or Graph Theory books.

It has very many typographical errors. This is the book from O’Reilly that I have submitted the most typos ever.

My major concern with the book is that although it uses NetworkX for an introduction to Social Network Analysis for Startups, the authors themselves say that NetworkX is not good for say 2000 nodes and above. And yet we are in an era where Startups get considered seriously after acquiring hundreds of thousands of users. And no the final chapter on Big Data does not really help out because it is not in the same pace as the previous ones. For example where would I go to find centralities for a 200K node network since NetworkX does not cut it? This is what the intended audience of the book wants in the final chapter. Or so I feel.


Get every new post delivered to your Inbox.

Join 1.739 other followers