Why I Use Emacs

(This post was discussed on Hacker News and Reddit)

I became an Emacs user at HUJI. The CS school IT group were fond of Emacs, and set it as the default editor in the computer labs.

And I kept using it since, until I decided I’m too young to be a retrogrouch, bought a license for the highly praised Sublime Text, and made it my default editor.

I tried to like Sublime, and used it exclusively for four months, before accepting it won’t work, and going back to using Emacs.

This wasn’t because of any major issue with Sublime: it is a very well made editor, and easy to extend. But it only extends so far, while Emacs is infinitely extensible.

Or rather, as any Emacs veteran would tell you, Emacs isn’t an editor, but a system that can handle text buffers and windows, and run LISP code to manipulate those. Therefore, it can do everything, and you can practically live in Emacs, as some do, using the underline OS just for bootstrapping it.

But I myself am not that much of an Emacs wizard — I wish I was, but I hardly know any Elisp, and can never find the time to learn — Yet I can (with no more than moderate effort) get Emacs to do most of what I want, but had a long list of things I couldn’t make Sublime do.
Most were trivial, but they added up. And one was grave: I couldn’t get it keybindings to be compatible enough with Emacs’, which are now so worn into my brain, I don’t think I could learn another set this side of the river Styx.

As Kieran Healy describes in beautiful prose:

But even if TextMate 2 drops from the sky fully-formed and marveled at by all, Emacs will still be there, waiting. It will be there when the icecaps melt and the cities drown, when humanity destroys itself in fire and zombies, when the roaches finally achieve sentience, take over, and begin using computers themselves — at which point its various Ctrl-Meta key-chords will seem not merely satisfyingly ergonomic for the typical arthropod, but also direct evidence for the universe’s Intelligent Design by some six-legged, multi-jointed God.

Norvig’s Algorithm Design Tutorial

Peter Norvig published a great tutorial on one of the most common, yet toughest challenges facing an algorithm designer on an almost daily basis: finding an optimal solution for a problem we’re pretty sure can’t be solved in reasonable time.

It’s in two parts, which you should go read right now: one and two.

It does what too few publications manage to do — not just list results, but show you how those results were achieved, so you could go use that knowledge to solve problems by yourself.

It helps that the problem is one you may find in real life, as defined by Randal Monroe (of XKCD fame,) and that Norvig uses clear Python examples to illustrate the full process of designing, testing, and optimizing the solution, so you could design it yourself.

If any of you have any power with one of the MOOC providers, I beg you to beseech them to get Norvig and Monroe to give an algorithms course: the latter would suggest problem, which the former would teach the audience to programmaticaly solve.
It’d be the bestest MOOC ever.

Monads in 5 Minutes

טקס מעבר של מתכנתי Haskell הוא לכתוב מדריך על מונאדות.
אני בחרתי באתגר אחר — להציג אותן בפני קהל, בחמש דקות.

כולי תודה למארגני כנס רברסים, שנענו להצעתי, ואני מקווה שאכן עמדתי במשימה שהצבתי לעצמי: לנסות ולשכנע כי אין צורך לפחד ממונאדות, וניתן, וכדאי, ללמוד אודותן גם אם אינכם מתכוונים לשמוע קורס בתורת הקטגוריות.

כמובן שחמש דקות הן זמן קצר להחריד, גם כשמדברים במהירות, ולכן אמליץ למי מכם שאכן הצלחתי לשכנע (הידד!), להמשיך אל המאמר ״Monads for functional programming״ של פיליפ וודלר, המציג מונאדות טוב משאי פעם אוכל להציגן.

מילואים: מין דקדוקי

יואב גולדברג האיר לי נכונה כי בעברית, המין הדקדוקי של מונאדה הוא נקבה.
חיפשתי וגיליתי שבתרגום של המונח בפילוסופיה, זה כך (למשל, אצל אברהם רגלסון). אמנם, האובייקט הפילוסופי שונה מזה במדעי המחשב, אלא ששמן של המונאדות במדעי המחשב הושאל מזה המתמטי, שבתורו הושאל מזה הפילוסופי, ולכן מתאים לשמור על המין הדקדוקי הנקבי גם כאן.

Did Facebook Pay a Good Price for WhatsApp?

Facebook bought WhatsApp for $19 billion, or roughly $42.22 per user, an amount which made many heads spin — it is slightly more than double the price per user Facebook paid when it bought Instagram two years ago (the photo sharing service had an estimated 50 million users when it was purchased).

But put into historical perspective, this deal seems much less gargantuan.

You may not remember, but in 1998, Microsoft bought Hotmail for a reported $400 million. Adjusted for inflation, that’s $582.7 million in 2014 dollars.

Hotmail had about 9 million users at the time, which sets the price at $64.74 per user in 2014 dollars, or 153% of the price of a WhatsApp user.

A colleague of mine noted we shouldn’t just consider PPU, but also reach. I’ve searched and found that in 1998, there were about 181.2 million people on the internet, so Microsoft bought a service used by about 5% of the internet.

Today there are about 2.1 billion internet connected phones in the world, which makes WhatsApp reach 21% of those.

In conclusion, when the deals are judged on PPU and reach alone, Facebook negotiated a much better price than Microsoft did.