I wonder if there is an updated version of this wonderful resource by Norvig. I read it about 12 years ago, and I still found it so useful.
In general, all the work by Peter Norvig is so clear, simple to read, and enjoyable.
This is a great news for OpenData and Data journalist. I think this promote much more the easy sharing of Datasets and also initiatives like the Panama papers, or WikiLeaks.
I think it's not a fight. RDBMS has been there for many years and they have proved to work in many areas. NoSQL databases born for new needs people was asking to have in their new projects.
Both would probably works perfect for many cases, but nosql databases are very suitable for scenarios when you do not require an strict schema, and also they are simple to setup.
I still think MongoDB is great for many applications as many companies are using it for their data needs (like Foresquare), and the same with RDBMS like MySQL, that lot of big fishes use them for different parts of their architecture (facebook, twitter, etc).
In the end, each option has pros/cons, but one will be better for your use case.
I own an HP dm4 (http://goo.gl/uCRa) running Ubuntu 11.10, it's not an ultrabook, but everything run out of the box and all working (except fingerprint device - which I don't care a bit about it).
HP in my case has been always a choice, their products work excellent with linux and just right out of the box. I recommend you also, that you make sure that everything is Intel (including the wifi card) because previoulsy I had another HP laptop with Atheros wifi that was unusable!
I'm wondering if this is the start of a set of open source lunching from google of its core tools. AFAIK, sawzall without mapreduce is like a car without the engine, but anyway I'm very pleased to read the code and start trying the language. Kudos to Google!
Google's implementation of MapReduce is so tightly bound to their internal infrastructure (GFS, BigTable, etc.) that opensourcing wouldn't do anybody much good.
Sawzall as a language is quite a bit uglier than the vast majority of general purpose languages. Couple this with the read/emit nature of the language, and it's either useful as a stream processing language, or as a step in a mapreduce chain.
Given how easy other languages are at processing streams, tagging output, etc., and that Sawzall doesn't really have an idea of shared state between "records" (aside from data emitted), it's hard to find things that Sawzall is good at other than mapreduce.
Or I could use any one of a dozen other languages that are more convenient to use, already available on my system, already works with S4, and with a syntax that doesn't make me want to cry :P
Emacs. I've used to to code in Vim/Gvim, but I switched to Emacs just to try and learn about Lisp. Emacs has tons of interesting "plugins" to add, and actually I'm using emacs as my Organizer (using org-mode) too.
Emacs hasn't anything to envy to any of those bloated IDE's like Eclipse or VS. I recommend to you:
* http://www.emacswiki.org
* http://steve-yegge.blogspot.com/
Steve Yegge has a lot of articles about Emacs/Elisp and it has been a excellent source of information to me.
:) Agree. Org-mode is great! It's extremely simple and the best of all is that save everything into plain text files that you can track with any version control system.