Why I'm leaving Harvard (for Google)
The word is out that I have decided to resign my tenured faculty job at Harvard to remain at Google. Obviously this will be a big change in ...
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 1,784 posts.
The word is out that I have decided to resign my tenured faculty job at Harvard to remain at Google. Obviously this will be a big change in ...
All my life I've done mental arithmetic the 'wrong way': I've calculated from left-to-right, instead of right-to-left. So when I do somethi...
When I finished college, I was incredibly naive when it came to finding a great job. I knew that I...
If, like me, you learn best by studying other code here's five some open-source rails apps with something to teach. They're a great resource to study and improve your own code, or to use as the starting point for your own applications. All of these applications use Rails 2 but as they are open-source they are a great…
Part 1: Finding the rootkit It's monday morning and I am for coffee in downtown Thessaloniki, a partner calls: - On machine XXX mysqld is not starting since Saturday. - Can I drink my coffee and come over later to check it ? Is it critical ? - Nope, come over anytime you can... Around
Wherever the image came from of a productive hacker being a vitamin D deficient couch potato, fueled entirely by Ramen and Jolt, it needs to die.
Mergesort and Quicksort are two well-known sorting algorithms, familiar to both researchers and practitioners. Both are typically presented as examples of divide and conquer . Other than this fact, they are usually not seen to be very closely related. Let’s look at Mergesort and Quicksort in a somewhat unusual way…
As a follow up to my post on Microsoft and Creative Destruction, it’s worth looking at this chart (from Silicon Alley Insider). It shows the quarterly operating expenses for Microsoft’s…
Photo by DeclanTM This article is #7 in a series about startup marketing. The first 6 (not required before you read this one) are available here: part 1 , part 2 , part 3 , part 4 , part 5 , part 6 . I've gone on and on about the subject of pre-launc
How many times did I want to watch a directory waiting for a file to appear in it? Constant ls, for example, quickly got boring. A quick Perl script that would reload ls every 5 seconds… yeah it works but it takes a while to type up, and often enough I'm too lazy for that. And then I found 'watch' – a utility that…
I’ve written a lot on the “War on Photography,” where normal people are harassed as potential terrorists for taking pictures of things in public. This article is different; it’s about recording the police: Allison’s predicament is an extreme example of a growing and disturbing trend. As citizens increase their…
Here’s something crazy and pointless: did you know that LCD monitors draw single pixels by mixing three individual red, green and blue subpixels ? It’s true! In fact, some devices (like mobile phones and handheld gaming devices) actually use this to anti-alias text and make borders more distinct. Microsoft even use it…
Pádraig Brady taught me a great trick in a comment to a previous blog post and it was so neat I feel a need to highlight it further as it also makes it easier for me to find it again later! To simulate a far away server, add RTT time to the localhost device. For … Continue reading Add latency to localhost →
After reviewing several hundred startup pitches for Capital Factory, I found several extremely common problems. You're probably making the same mistakes -- I did have too ten years ago -- so let's get that fixed.
SQL is ugly but powerful, ORM is genuinely dumb, and "NoSQL" should really be called OMADS: Obviously More Appropriate Data Stores. Start every project with an RDBMS, add specialized stores where they fit, and stop apologizing for using SQL. Forty years on, nothing beats it for ad-hoc questions about your data.
Tidying up my messy corner in the basement I unearthed one of my older "ideas books" in which I write down the random ideas that flit throug...
The other day I saw the announcement for the new Chrome OS test laptop and decided to sign up on the off-chance that I might be able to snag one. In the request form I made it very clear that I would be attempting to use this laptop for development (easily my primary activity). Surprisingly the laptop arrived this…