Oversighting Title

Location aware social networks

April 12, 2008

Yet another step in the direction of tight realworld-internet integration: the number of startups proposing cell-phone based location aware software is skyrocketing. We've already discussed linkedin going mobile and the current problems of actually using cellphones to do social networking, but now the market is getting crowded.

The most straightforward use of such a network, and probably the one with the best ROI as of today, is the "Mobile dating" slice. MeetMoi and limejuice are doing it right now, but more will surely join in the future.

While some other startups are going in a "one network fits all" approach, like MobiLuck, Imity,aka-aki, often using a bluetooth powered engine to detect nearby user or leveraging GPS (like Loopt), there is space for more specialized networks.

Think about a gaming platform, think about hobbists who seldom meet each other and so on. While a clone of facebook would likely result in a huge mess in any city as soon as it reaches critical mass, a focused application only connecting some kind of people could do the job: meeting even one new person into the "70s-singers-wearing-only-black-shirts-from-Losanna" fanclub would be enough a payback to have the application installed.

Meanwhile the first IPhone powered social network is almost ready...

Memory overcommitting and virtualization

April 03, 2008

During March the virtualization scene, or at least the most technical part of it, discussed about memory management. What does it mean?

Imagine you are going out for a picnic with 10 friends. You could choose 3 cars or a small bus. You go for the bus so you can save a little on fuel, just like you could install 10 virtual machines on a single hardware server and save power. So far so good: but now, let's take the metaphor further: since you are going to have a picnic, you need some tools, like a barbecue, a blanket, a basket and so on. Once again, you could have one item for each person, or you could share it. In virtualization, this is called page sharing: virtual machines share memory pages with the same contents.

Page sharing is a (big) part of the memory overcommitting in virtual environment. The next part is the balloon driver. Image you have to take your coat off in your car: you take a little more space on the backseats and your friend tries to get out of the way, since he's not doing anything important. The same goes for the balloon logic: if a virtual machine is not actually using the RAM it was allowed to, it gets "preempted" and memory is assigned to another machine.

VMware, in an attempt to show how its own overcommitting is far better than the rest (say, for instance, XEN's) has shown us some tests where various instances of Windows are running various applications. Virtualization.info covered the story as well.

So, why am I writing about that? Well, as always with tests, we have to think about them, otherwise we just oversight their real meaning. Repeat with me: overcommitting has to be tested in my environment before I can judge it and do proper capacity planning.
Why? 178 virtual machines all running up-to-date Windows and (almost) the same services will leverage page sharing! And a lot of it, I shall add. So you cannot really do capacity planning considering memory overcommitting if you, like 90% of the companies I know (and that's a lot) run different operating systems,applications and so on.

We could wonder why VMware is not showing some tests with different OSes and services.. and by now you probably can answer yourself to this question.

The best online CRM, intro

March 11, 2008

A CRM software (where CRM stands for Customer Relationship Management) is one of the central software package of any business.
What we once did by bare memory and "the human touch", today we do by using very very complex softwares (actually CRM is a strategic approach, but nowaday when we say CRM we mean just the software). Web oriented CRM are growing bigger and bigger: their ubiquity, low total costs of ownership and all the usual pros associated with web applications are very important factors when choosing a new CRM.

A lot of free or low-cost CRMs surface every day, and some are gaining a good degree of popularity. In these articles, I will discuss some of the most used CRMs, examining both the technical and the business facts, from the perspectives of both an SMB and a Freelancer.

The first ones will be the VTiger / SugarCRM couple, coming tomorrow.

Can you trust a replicant? Virtualization and model checking

March 07, 2008

Nowaday it's almost impossible to be in the IT business and not be involved somehow with virtualization. Snapshots and complete control over a machine are able to speed up development and testing by orders of magnitude and are unvaluable tools in the hands of sysops and developers as well.
Tonight I've come across Virtutech, a company doing emulation of various hardware platforms. Using their words, they do virtualized software development.
Their products had me asking myself a question: can we really trust virtualized environments as being significant for our tests?
Last week I had a discussion with a colleague about building an exploit-testing machine where we should run new exploits, a simple sandbox for our lab. My colleague was arguing that using a virtualized solution could have a significant impact on tests involving direct access to memory at ring 0. I've not been able to find an answer to this argument (feel free to comment if you did) since technical insights on these details are somewhat lacking.
Model checking is a difficult discipline, seldom used in real world. Virtutech solution seems to be based on SimICS, a virtualization platform originally from SICS. SimICS is around since 1995 as a full platform emulation aimed at virtualizing embedded systems, and as such seems to be a rather reliable solution: inside its framework hardware vendors have to develope an emulation layer representing their hardware (a virtual platform).
One could ask how much reliable the framework is, and how much reliable the virtual platforms actually are. From Virtutech website:

It is important to note that a Simics Virtual Platform is a representation of the physical board/system. Virtutech does not warrant that all aspects of the physical hardware have been modeled. Consult the documentation accompanying the Virtual Platform for additional details regarding actual implementation.

That is: you cannot trust the platforms, and we're speaking about rather simple environments when compared to full x86 server systems.
So, the question is: can we really trust virtualization from a formal, rigorous viewpoint?
Would you trust a life-support machine tested mostly (or only) on virtualized hardware to cut time to market?