base32 encoding in javascript

I had to perform base32 encoding in javascript, and I found nothing ready for the task, so I started cramming out code, and here it is

var baseenc = baseenc || {};

baseenc.b32encode = function(s) {
 /* encodes a string s to base32 and returns the encoded string */
 var alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ234567";

 var parts = [];
 var quanta= Math.floor((s.length / 5));
 var leftover = s.length % 5;

 if (leftover != 0) {
  for (var i = 0; i < (5-leftover); i++) { s += '\x00'; }
  quanta += 1;
 }

 for (i = 0; i < quanta; i++) {
  parts.push(alphabet.charAt(s.charCodeAt(i*5) >> 3));
  parts.push(alphabet.charAt( ((s.charCodeAt(i*5) & 0x07) << 2)
                               | (s.charCodeAt(i*5+1) >> 6)));
  parts.push(alphabet.charAt( ((s.charCodeAt(i*5+1) & 0x3F) >> 1) ));
  parts.push(alphabet.charAt( ((s.charCodeAt(i*5+1) & 0x01) << 4)
                               | (s.charCodeAt(i*5+2) >> 4)));
  parts.push(alphabet.charAt( ((s.charCodeAt(i*5+2) & 0x0F) << 1)
                               | (s.charCodeAt(i*5+3) >> 7)));
  parts.push(alphabet.charAt( ((s.charCodeAt(i*5+3) & 0x7F) >> 2)));
  parts.push(alphabet.charAt( ((s.charCodeAt(i*5+3) & 0x03) << 3)
                               | (s.charCodeAt(i*5+4) >> 5)));
  parts.push(alphabet.charAt( ((s.charCodeAt(i*5+4) & 0x1F) )));
 }

 var replace = 0;
 if (leftover == 1) replace = 6;
 else if (leftover == 2) replace = 4;
 else if (leftover == 3) replace = 3;
 else if (leftover == 4) replace = 1;

 for (i = 0; i < replace; i++) parts.pop();
 for (i = 0; i < replace; i++) parts.push("=");

 return parts.join("");
}

I release this code under the obnoxiously named but quite appropriate WTFPL license. I left the decode, as it is commonly said, as an exercise for the reader. Seriously, I didn’t need decode, so I did not invest time into it. Sorry, maybe in another post !

Exploring Mandelbrot parameter space – part 2

In the previous post, we saw that graphing the Mandelbrot starting point contains fractal features as well. We want to plot these features, and at the same time increase resolution but reducing computational cost.

The first thing to note is that apparently, the plot is symmetric (but I don’t have any strict proof of it) so technically only 1/4th of it can be computed, at least during the exploratory phase. The second optimization is that we are going to plot either a white pixel (if the corresponding Mandelbrot contains at least one white pixel) or a black pixel (the Mandelbrot contains no white pixels). This dramatically reduces the time needed, because when plotting each Mandelbrot, we can exit the generator as soon as a white pixel is found. White pixels are computationally expensive because the iterative procedure for that pixel must run up to the end, hence very whitey Mandelbrots, which are the majority, require a lot of these “up-to-end” iterations. This wastes a lot of time to compute something we know as soon as the first white pixel is found. On the other hand, Mandelbrots containing no white pixels have their iteration loop cut short for basically every pixel, making them faster to compute even if we have to run on each and every pixel of the Mandelbrot.

After these improvements, I ran two calculations. One using 100×100 Mandelbrots (on the left), another using smaller, 10×10 Mandelbrots (on the right)

Apparently, the best visual results of the fractalization are obtained with smaller Mandelbrots. I am not really surprised, we already saw a similar situation in the previous post, where I plotted according to the number of white points. I have the feeling that increasing the resolution (the plots you see above are from 1000×1000 images) we would see better fractalization in the 100×100 case as well, but I would not bet on it. In any case, the 10×10 Mandelbrots are sufficient for our purpose, and they are much faster to compute. It’s time to increase the resolution up to a staggering 900 Megapixel (30.000 x 30.000), on the full set, and see what happens. What you see took 10 full days to compute. I am not posting the full image, just a small low-resolution screen grab. The image is so big that is unreadable on Firefox, hangs Gimp and puts Preview.app in a very unpleasant situation. Here is the overview

Overview

As said previously, the Set appears to be symmetric. The fractal features we observe on the border are unique, in particular due to the existence of compartments with common behavior. Please note that all the terms I will use along this analysis are invented by me. Nothing of what you read is formal or agreed nomenclature. I will start from the left hand side of the border, and walk up to the top.

First, we have what I call a spike, a long, narrow line running horizontally and stretching away from the central bulge. This feature is found in the Mandelbrot set as well.

Mandelbrot whiskers

Spike and Whiskers

If you click the image and zoom in, you will notice a very interesting feature which also can be found in the Mandelbrot Set: lateral whiskers. These curved features intercept the spike in very bright areas. In traditional Mandelbrot, these areas are rich in self-similarity, as you can appreciate from this magnificent Mandelbrot image from Wikipedia. I don’t know if similar self-similarity can be found in this Set as well, and the current resolution does not allow to infer any statement. According to what I understand from this answer Sam Nead gave at Math StackExchange, self-similarity is connected to what I assume is a mathematical property called renormalization. Due to my lack of expertise, I cannot explore this any further, but I encourage anyone competent on fractals to add comments, fix my mistakes and provide enlightenment on this regard.

Prickly pears zone

The next interesting feature is what I call the prickly pear zone. This zone has very sharp convergence points, and a large number of buds with similar shapes. The central zones look slightly polygonal in nature. I call it prickly pears due to its resemblance with the Opuntia (indian fig) plant, a cactus with characteristic fruits.

Prickly pears (Indian fig)

The sharp contact points recall similar features found in the Mandelbrot set, but on the other hand, the polygonal-like structure is not found. Mandelbrot, at least in its full, unzoomed representation, contains circular structures and the main cardioid.

The third interesting feature is the tree foliage.

Tree foliage

which appears as a relevant change from the repetitive, sharp-edged prickly pears area. On this regard, however, nothing beats the nervous, highly featured, strongly self-similar and spiraling behavior of the fuzzy worm. This area of the plot is incredibly featured and a real pleasure to zoom in.

Fuzzy worm

After the fuzzy worm, we don’t see any more spectacular features. The border becomes first rocky, then smooth then rocky again, and it’s finally closed with a hole.

Mandelbrot final part

As usual, I cannot really say anything about the mathematical content of the task I performed and the features of the resulting fractal. However, it has been an incredibly interesting and fun exploration into a fascinating discipline. I hope you enjoyed this exploration, and feel free to leave comments if you want to add information or fix mistakes.

Exploring Mandelbrot parameter space – part 1

Some time ago, I presented an interesting python code able to draw the so-called Mandelbrot set, a fractal image with intriguing properties. Recently, Benoit Mandelbrot passed away. I want to pay homage to his work by digging into more details of his eponymous image.

In the previous post, we observed that a parameter is crucial for the resulting image: the “starting point”, described in my code as (a, b) or, in the second part of the post, z0. In traditional Mandelbrot, this starting point has coordinates z0 = (0.0 , 0.0), and with this input, the Mandelbrot set is obtained.

After this first evaluation, I went further on by showing how the Mandelbrot Set changes when this point z0 is modified from the original value (0.0, 0.0). The animations I provided show what happens to the Set when choosing different z0 points, such as (1.0, 0.0) or (-2.0, 0.0), for example. The first animation showed plots with z0 = (a, 0.0), with a going from -3.0 to +3.0 with a step 0.1. In other words, I produced a Mandelbrot image for z0 = (-3.0, 0.0), another one for z0 = (-2.9, 0.0) and so on, until z0 = (3.0, 0.0). In the second animated picture, I did the same for points like z0 = (0.0, a) with a on the same interval and step. Finally, the last animation shows how the Mandelbrot behaves with starting points (a, a), again with the same interval.

This exploration of the bond between a possible value for z0 and the resulting Mandelbrot has interesting properties. Let’s try to see visually what’s going on. Imagine there’s a plane of possible values of z0

The plane of the possible values of z0

For each point on this plane, there’s an associated Mandelbrot Set image. The traditional Mandelbrot is associated to the origin of this plane. With the experiments I did by changing the starting point, I moved along the x axis in the first animated picture, along the y axis in the second animated picture. For presentation purposes, I could choose to stick the actual Mandelbrot images on this plane, imagining that the lower left corner of each image indicates the z0 point that image comes from

Mandelbrot sets for particular points of z0

Mandelbrot sets for particular points of z0

As I already stated, the lower left corner “points to” the z0 point. You see, along the x axis, images for the cases (-2, 0), (-1, 0), (0,0), (1,0), (2,0). Along the y axis, you see (0, -2), (0, -1), (0,0), (0,1), (0,2). These are only a few of the points you could actually choose. Any point of the plane has an associated Mandelbrot.

My plan for this post, is to explore the plane, that is, to see how the Mandelbrot image changes as I select points like (0.34, 0.12), among others. In order to achieve this, I need to do exactly what I did above, but with smaller images with respect to the size of the “graph paper” image. The results are quite interesting

z0 plane. Zoom out

z0 plane. Zoom out

The image above shows the z0 plane. It is built with the same concept given for the very simple case above: many Mandelbrot images, whose corner refers to the actual point on the plane. To demonstrate you this is the case, if I zoom in what I see is this

z0 plane zoom in

z0 plane zoom in

A collection of very tiny, very low resolution Mandelbrots, each of them associated to a specific point of the z0 plane. I had to keep the resolution of each individual Mandelbrot to very, very small. What I did takes a lot of computer time.

The interesting fact about this plot is that it contains fractal features as well! Looking carefully on the left, and playing with the zoom, I obtained this image

z0 features

z0 features

I suggest you click on the image (so to get a bigger version) and observe it from afar. The ramifications typical of fractals will be evident. Every small white dot in the above image is a “mini Mandelbrot” image, whose white points allow us to see something, but not very clearly. Can we improve the situation? Let’s see.

I developed a new program. Instead of placing tiny Mandelbrot images like post-it notes on a board, for each point of the z0 plane I generate the corresponding Mandelbrot, then I count the number of white points it has, and I color the pixel of the z0 plane of a different shade, depending on the amount of “whiteness” showed by the corresponding Mandelbrot. The result ?

Click to enlarge. The above image was created from the number of totally white pixels (scaled from 0 to 255 against the maximum) in a series of 100×100 Mandelbrots, one for each pixel. Not as fancy as I hoped for. I tried to play with color balance to no avail. I think there are two problems. First: the small resolution (1000×1000 is not much). Second, the poor averaging strategy, leading to poor contrast. This plot required 48 hours of computation.

Trying to get better plots requires a lot of computational time to increase the resolution, but unfortunately I only have a laptop. This kind of problem can run parallel very efficiently, but even if I put my second core to work, I won’t get very far. The next step is therefore to get a better plot at a reduced cost, eventually accepting some compromises. Stay tuned.

An initiative to promote science through a symbol: tulips

After I came back from TAM 2010, I was waiting for my train to bring me home. I started thinking that there is a potential Public Relations issue with scientific proponents and skeptics around, and it’s never good to have a Public Relations issue. I feel there’s a need to change this, and a need to do good to promote critical thinking and scientific research, raise awareness about science while promoting well being.

The stream of thoughts focused me to the following needs:

  1. Reduce the perceived vision of “dicks” and instead promote an image of carefulness, long term planning, passion and love for beauty
  2. Do some activity requiring small expertise, promoting a gratifying, beautiful result
  3. Do some activity whose apex is during a relatively narrow period of time, so that there’s a particular period of the year where things happen and people see the result
  4. Something symbolic must be used. The symbol must be nice, and increase the level of happiness. A symbol that uses nature, and focuses on growth through human contribution
  5. Some good, concrete action must be done as a concurrent activity
  6. It must act as a constant reminder of your commitment
  7. It must influence the life of others, without bragging about how good and kind you are, because bragging may be perceived as impolite

After a while, I decided to go with the following

Yep, that’s a bag of tulip bulbs. Cheap, and full of beauty.

Once a year I receive the royalties from the book I published together with other, much greater than me people. I decided to put these money to a more productive goal than buying a new hard drive, and I donated them: Wikipedia and Doctors Without Borders. (yep, sorry I have to brag just for the argument)

After my train of thoughts, this year I decided to associate this donation to gardening. I’ve never grown anything in my own life, and I have nobody around able to give me hints, so it’s definitely a challenge for me. The idea works like this: I plant the tulip bulbs in October. When in Spring I get a nice tulip, I donate the flower to a person I know, and at the same time I donate to a science-oriented no-profit organization.

Do you want to follow me in this idea? good. Here are the general rules:

  1. Plant the tulips. Here are instructions and some Q/A. They must be put into a vase during the Fall (that is, now, if you live in the northern hemisphere), and stay outside in a sunny, dry place.
  2. Send me an email or twitter message to inform me you planted a bulb. My email is in the About Me page.
  3. Tulips bloom in Spring. If you are a geek, you can try with a time lapse of the growth, but it’s enough if you take a picture of the flower in its vase. After this, either cut or move the flower in a small vase. Give the flower to a person you know, and don’t tell him/her what’s about. The point is to make someone happy with a simple act of kindness. If him/her is interested to know more about what’s going on, he/she will find out. You have to know the person because giving something to strangers for no reason is likely to make them uncomfortable, rather than happy. Go for someone who trusts you.
  4. Donate something for correct scientific dissemination, critical thinking, health care, environment protection and cleanup, or anything else that improves quality of life through good science and encourages love for science and the scientific method. Your choice. It could be money, it could be some relevant amount of your time. If you choose to donate, choose a non-profit that promotes science. For example, in Italy there’s Telethon for muscular dystrophy, but you can also go for cancer research and assistance (like Cancer Research UK, for example), STD prevention… your call. Try, if possible, to promote organizations or activities based in your own country.
  5. Send me the picture of the flower. If the idea catches on, I will try to organize a website to publish the pictures.

Why a tulip you may ask? I’m in the Netherlands, tulips are beautiful, simple, easy to grow, and it’s the right period of the year. It seems a natural choice.

Have fun!

TAMLondon 2010 remarks and comments – Part 4 of n

Notable talks

Susan Blackmore presented an excerpt of her first years of  research on paranormal. She shows intriguing statistics on paranormal evaluation, describes some techniques used for cold reading. A consistent part of her talk was relative to physiological explanations of different phenomena our minds perceive as paranormal or mystic. More specifically, she touches arguments such as sensory deprivation, sleep paralysis, the structure of the visual cortex and the Olaf Blanke experiments (see also here). All these techniques and experimental setups provide good explanations for perceived paranormal events, such as ghost appearances, alien abductions, light tunnels and out-of-body experiences.

Richard Dawkins held a thoughtful and poised talk on the preciousness of scientific literature to be considered classic education, while scouting the broad number of scientific disciplines describing the mechanism of our world and life in particular. Dawkins presents a talk both source and inspiration of great quotes, enticing the audience with a profound philosophical vision: “Science is uplifting, inspirational, poetry of reality“, “If more of our political masters understood statistics, the world would be a better place“. The humbling tree of life shows our position in the evolutionary development, a twig of a deeply branched bush covering animals, plants, fungi, bacteria.

In addition to its high philosophical tone, the talk presents real case scientific scenarios for disparate arguments, such as: flight stability strategies in dinosaurs and birds to reach the optimal compromise between stability and ease of flight versus instability and high manoeuvrability; Computational evolutionary optimization of windmills and fuel injectors nozzles to achieve the best performance; and evolution of human language, maybe the best platform to explain and demonstrate evolutionary concepts to the general public.

Cory Doctorow presented a talk about copyright and the historical background of Intellectual Property (in the early days known as creative monopoly). In his words, Doctorow says that “yesterday’s pirates are today’s admirals”, referring to how past piracy allowed development of companies that are now brands with worldwide recognition and technologies whose revolutionary nature changed our lifestyle. Doctorow presents an example of copyright stifling innovation for databases: while in UK any collection of data was protected under IPR laws, in US no such protection was present, allowing the creation of an incredible amount of databases, and consequently better associated services.

Karen James talked about the Beagle Project, finalized at rebuilding a replica of the HMS Beagle and set sail along Darwin’s travel to promote scientific dissemination, improve public engagement with science and encourage young people to become scientists. As I am starting a sailing course as a crew member next spring, this project hit me on the sweet spot, dreaming to be part of this incredible travel.

A board discussion held by Paula Kirby focused on skeptical activism. Most of my comments were presented in my previous post. The discussion produced interesting resources worth checking out, such as “Sense about Science” and the evidence-based policy initiative from the “Nightingale collaboration“. These initiatives are all UK-centric. I personally asked a question about similar initiatives and strategic networking with other European countries. Let’s see if it grows into something.

The talk given by Marcus Chown goes through recent discoveries to provide a mindblowing list of scientific oddities. Did you know that the Sun uses a very inefficient nuclear reaction to produce energy, and it’s due to its inefficiency that it lasts enough for us to be here ? What about the fact that if you are at the ground floor you age slower than being at the first floor, and very accurate clocks are able to measure this difference even between two stair steps ? Did you know that a small percent of the white noise you see on an untuned TV is actually the echo of the Big Bang ? Marcus provides a brilliant and really pleasant talk, both conceptually and visually.

The Big Bang. Sorta.

Finally, JREF president D. J. Grothe and P. Z. Myers gave two different talks with overlap and disagreements, concerns skeptic activism and atheism. Grothe points at the need for skeptics not to be “dicks” in their positions, and have a tender heart with a tough mind. I share his point of view, and I wrote about the same topic some weeks ago. P. Z. Myers on the other hand claims a different, more intransigent attitute, in particular when it concerns skepticism on religious issues, i.e. atheism “Do be a dick. Be the best dick you can be.” or, in his words “do be a Richard”.

Myers’ point is supported by his observation that by their very nature, atheists are “honest, assertive, humorous, angry, critical, militant, scientific, uncompromising, rude”. I don’t share his point of view on some of these terms, but I do agree that for some people, even the pure questioning of a belief (regardless of it being religious or not) is automatically classified as rude, no matter how positive assertiveness and smiles you can put in presenting your evidence. I already wrote about the case: haters gonna hate, stick their fingers in their ears and start singing. No matter how much evidence is carried, people don’t like to be proven wrong, and they will continue using their “miracle cure” or “magic bracelet”. In this sense, Myers says that when there’s basically no possible way of not being classified as a dick, the solution is to try to be the best dick possible.

A comment on Grothe/Myers Talks

My opinion on the point raised by Myers is different: you should choose your goals wisely, and work for something, not against something, with patience, passion, and righteousness. While it’s clear that immediate and firm stance must be taken against people selling poison or sugar for medicine, or scamming old people and grieving mothers, or giving a free pass to intolerance and discrimination, the long term goal for skeptics should be to increase scientific education, promote correct popularization of science, explain with a clear and accessible language, and dispel fear and myths. These, in my opinion, are the productive long terms goals skeptics should focus on.

This is my last post regarding TAM London 2010. I want to thank the speakers, the audience and the organizers for the fantastic experience.

In an upcoming post, in a couple of days, I will introduce a symbolic action I am going to take to promote goodwill and personal growth, while making someone happy in the meantime. My hope is that other people will appreciate this idea, so that it becomes a pleasant activity and potentially a way to promote skepticism and concrete actions towards better science. After this upcoming post, it will be back to science at ForTheScience.

TAMLondon 2010 remarks and comments – Part 3 of n

This post continues my review on TAMLondon 2010. I will go into details of the audience and the talks, and memorable quotes. I keep the individual talks for the last post, due tomorrow.

The audience: with an audience reaching one thousand delegates (more than twice the first edition), question time was in some cases limited, but the questions intriguing. Approximately half of the delegates were Brits, the other half from the rest of Europe. A thumb-statistics survey from chitchat and nametag-gazing would indicate strong presence of Scandinavian countries, Sweden and Norway in particular. Some delegates were also from Hungary, Spain, Switzerland, Ireland. Strongly underrepresented Italy, with only a very cheerful and pleasant lady I met in the last minutes of the meeting, and of course myself. Around 60 % of the audience was male. The average age was around 30, ranging from 15 to over 60. Concerning the profession, I heard about tourist operators, managers, box manufacturers, computer programmers, students and academics, but my sample is very limited in size.

The speakers and the talks: a very broad set of presentation styles was available. Most speakers preferred a freestyle speech with a minimal number of slides. I reckon a maximum of four or five slides in talks using them. The speakers were in any case incredibly good in keeping the audience interested in every detail, even when no supporting slides were present.

Interviews were definitely over-represented. In comparison, I don’t recall any interview from last year’s TAM. As I previously said, I think this introduced some occasional yawn, but I don’t want to give the impression they were boring. It’s a matter of rhythm.

Memorable quotes

  • “The Internet is creating people who wouldn’t be able to create the Internet” – Graham Linehan
  • “Be the best dick you can be!” – P. Z. Myers
  • “Common Sense. So rare it’s a super power.” – Unknown
  • “Scientists don’t have the whole truth, but a path to the truth” – P. Z. Myers
  • “we need mythology and symbology, as long as we don’t confuse it with reality” – Alan Moore
  • “Facebook is where you lie to your friends, Twitter is where you’re honest to strangers” – Graham Linehan
  • “If more of our political masters understood statistics, the world would be a better place.” – Richard Dawkins
  • “The nerds shall inherit the earth” – Ben Goldacre
  • “Tough mind and tender heart is the right recipe” – D. J. Grothe
  • “Science is humility before the facts” – Stephen Fry
  • “Yesterday’s pirates are today’s admirals” – Cory Doctorow

TAMLondon 2010 remarks and comments – Part 2 of n

TAM London 2010 was highly different from the first European edition in 2009. If I had to describe the 2009 edition in just three words, these would be: showmen/women, music, science. For this year edition, the three words would be very different: interviews, feelings, activism.

First, interviews. For the sake of argument, I will consider interviews board of discussion as well. A concrete number of guests speakers were interviewed, such as Randi (by Ince), Stephen Fry (by Tim Minchin, more on this later), a panel discussion about skepticism initiatives, the Tim Minchin night with the interview at the team for the “Storm movie”, and the interview of Melinda Gebbie by Rebecca Watson. My personal opinion is that interviews should be kept to a minimum at an event such as TAM, as I feel they tend to become boring when too long. Twitter messages I spotted during interviews tend to validate that I’m not the only one holding this opinion. Finally, Tim Minchin interviewing Stephen Fry was unfortunately characterized by Tim’s strong lack of experience.

Second, feelings. This TAM was consistently characterized by depth: emotional, philosophical, of thought. A broad set of topics was analyzed, with strong focus on skepticism, education, and scientific methodology. Insightful quotes were uttered and propagated through twitter. I personally interpret the overtone of wisdom-oriented topics, compared to the cheerful 2009 showmanship as a natural intellectual growth from a “young” to a “mature” TAM.

Third, activism. Both the speakers and the audience realized that if a line exists between being scientifically curious, inquisitive, looking for evidence to support claims, and being an activist for truth and correct scientific dissemination, this line is blurring.

It is blurring because, I believe, the point of skepticism is all about doing the right thing in front of daily quackery: getting people informed to prevent their exploitation. One would think that education is a good step to protect against exploitation. Unfortunately it’s not enough: quoting James Randi, “education doesn’t necessarily make you smart. It just makes you educated.” It is a moral duty to protect people from being scammed, exploited and controlled, because it’s the right thing to do. Some of the world’s problems are also due to credulity of false claims and exploitation of credulity.

Everybody is occasionally a skeptic: checking the tyres and the engine before buying a car is skepticism. It is a method of inquire that promotes rejection of quackery by verification of claims through supporting, testable evidence. It is a legal trial applied to notions. Activist skeptics apply the “check the tyres” approach to every important claim they encounter. This applies also, but not exclusively, to misrepresentation of research performed by news: there’s a lack of interest about the peer review mechanism in scientific journalism. Unfortunately, sensationalism trumps correct dissemination anytime, leading to wrong, awkward, counterproductive dissemination, generally focused on increasing fear, uncertainty and doubt in the general public. I already wrote about this on my previous post “The challenges of scientific communication”, on page 3.

Skepticism is in the nature of the curious, positive mind. Through skepticism, the scientific method, and evidence-based verification of claims is the only method that gives answers to the mechanisms of the world we live in, and in particular its many problems. With good and true knowledge on these problems, we have a chance to find good and true solutions. If we have wrong and false knowledge, we will only find wrong and false solutions.

In the next post, I will write about the audience, the speakers and the talks, commenting on some of them and highlighting their important points.

TAMLondon 2010 remarks and comments – Part 1 of n

I just arrived home from The Amazing Meeting 2010, and I would really like to report my warm comments on the event, but for practical reasons I am forced to delay a clearly articulate post. Those who followed @forthescience on twitter already had an idea of the event, although reporting with clarity a live situation is always difficult, at least for me. In the next days, I will start writing more details about the event; if the posts become excessively long, I will do multiple posts, separated by some days. I won’t do a unique, long post with multiple pages.

That said, stay tuned, but briefly said… how was the meeting for me ? On a scale from negative to positive, my overall feeling about the meeting is neutral with a hint of positive.

TAMLondon 2010

I am attending the Amazing Meeting in London. I am tweeting updates on @forthescience like last year.

Shuffling around: SCM

I just relocated to Amsterdam, The Netherlands, where I started my new employment as a scientific software engineer with Scientific Computing & Modelling. I am completely excited for the opportunity and I am guaranteed to have an incredible time with their impressive software.