France is Bacon

When I was young my father said to me:

"Knowledge is Power....Francis Bacon"

I understood it as "Knowledge is power, France is Bacon".

For more than a decade I wondered over the meaning of the second part and what was the surreal linkage between the two? If I said the quote to someone, "Knowledge is power, France is Bacon" they nodded knowingly. Or someone might say, "Knowledge is power" and I'd finish the quote "France is Bacon" and they wouldn't look at me like I'd said something very odd but thoughtfully agree. I did ask a teacher what did "Knowledge is power, France is bacon" meant and got a full 10 minute explanation of the Knowledge is power bit but nothing on "France is bacon". When I prompted further explanation by saying "France is Bacon?" in a questioning tone I just got a "yes". at 12 I didn't have the confidence to press it further. I just accepted it as something I'd never understand.

It wasn't until years later I saw it written down that the penny dropped.

I've tweeted this before, but this week this reappeared on Reddit and I couldn't resist not posting it to my blog.

Recapitulation Theory

The Recapitulation theory (http://en.wikipedia.org/wiki/Recapitulation_theory) states that "ontogeny recapitulates phylogeny—[...] a hypothesis that in developing from embryo to adult, animals go through stages resembling or representing successive stages in the evolution of their remote ancestors".

I have the theory that the same happens with religion. When we are children we believe in fairies and magic beings behind everything we can't explain, like the earlier human religions. As we grow old we move from polytheism to monotheism, and then to the idea of a creator less interested in every single little thing we do. And finally we go through Enlightenment, realizing that god is simply Santa Claus for adults.

JSON parser written in bash

yo, so it's a json parser written in bash

pipe json to it, and it traverses the json objects and prints out the path to the current object (as a JSON array) and then the object, without whitespace.

This is exactly what I need 2 weeks ago, for the Summer School we organized. We had 24 students running a global climate model on our supercomputer through a 2 Mbps link. I created a simple message queue using JSONStore, and a website where the model could be configured and added to the queue. Most of the time I was interacting with the queue using curl on the command line, and this would've helped me a lot.

Science Code Manifesto

Software is a cornerstone of science. Without software, twenty-first century science would be impossible. Without better software, science cannot progress. But the culture and institutions of science have not yet adjusted to this reality. We need to reform them to address this challenge, by adopting these five principles:

Code

All source code written specifically to process data for a published paper must be available to the reviewers and readers of the paper.

Copyright

The copyright ownership and license of any released source code must be clearly stated.

Citation

Researchers who use or adapt science source code in their research must credit the code’s creators in resulting publications.

Credit

Software contributions must be included in systems of scientific assessment, credit, and recognition.

Curation

Source code must remain available, linked to related materials, for the useful lifetime of the publication.

I signed it, just before Fernando Serboncini.

For me, this is the destruction of the only online space I truly give a shit about.

Google announced yesterday that they’re removing the social features from Google Reader. They’re pitching this as an attempt to “clean things up a bit.” They also claim that, “the end result is better than what’s available today.” They acknowledge that removing the ability to friend or follow other gReader users, among other non-specified “things like” those social features, might cause people to “feel like the product is no longer for you.” Their proposed solution: export your data from gReader. The end.

I've said it many times, gReader is my social network. Exporting to G+ is nice, but right now there's no way to get a feed of a friend's posts on G+, to integrate it back to gReader.

Testing Posterous' MetaWeblog API

I've been thinking a lot about my web presence, and how I don't have 10% of what I've been writing since 2001 online. In the last 10 years I've written 5 or 6 different blog engines, used b2, Wordpress, Vellum, etc. etc. etc. I think that weblogs are a somewhat dead medium these days, since the availability of differentiated services (Twitter, Flickr, Github, DeviantArt) spread our online presence through a myriad of services. That's why I post on Twitter, that's why my pictures are on Flickr, and my code on Bitbucket — 10 years ago all of this would be on my weblog.

So I want to use Google+, for example, but I don't want to spread my online presence even more. That's one reason why I like Posterous, it's less than I can post with emails and more that it will autopost what I write to all the services that I use. This way I can keep everything I do on a single URL, not for convenience but for bookkeeping. Of course there's still the problem that Posterous may close in a few years, and I'll have to move everything again to another service, which is always a PITA.

The solution I found is to write a simple service where I can post everything and it will store as a backup. Posterous supports the MetaWeblog API, so it's all I need to implement for now. There's still no integration between Google+ and Posterous (yet, they say), and until then I'm not posting to Google+. One solution I see is writing a script that gets my posts on Google+ and posts them on my backup service through the MetaWeblog API; this would be something easy to do.

Anyway, this is a test on the Posterous MetaWeblog API. I configured it to post to a test Wordpress blog that I have. I'm mostly interested on how it will handle images — AFAIK the API supports media upload, and I want to see if the attached picture will be uploaded to the blog or if it will stay hosted on Posterous and hotlinked from my Wordpress blog. 1... 2... 3... go.

Update: it works.

Construct a Simple DC Motor Driver

This simple DC motor driver circuit uses a 741 operational amplifier operating as a voltage follower where its non inverting input is connected to the speed and rotation direction of a potentiometer VR1. When VR1 is at mid position, the op-amp output is near zero and both Q1 and Q2 is OFF.

When I was 11 I started playing with electronics, influenced by a friend in school. Eventually I moved onto software projects, since it's cheaper, it's easier to change components and you don't burn your fingers as much! But lately I've been playing again with electronics — last year I bought an Arduino, and this year I've been tinkering with some analogical circuits.

This schematic is for a small robot that I'm planning. I'll keep the blog updated on the project.