Monday 29 December 2008

November Tech Meetup - Virtualization and time travel!




I was about to title this post as "November Tech Meetup - another success" but then thought that it was getting cliched... Nonetheless the November Meetup was pretty "successful" with about 60 people attending. We had enough pizza for everyone this time... :-)


Trial of Corners Idea

This time, on popular demand, we finally tried the corners idea. We labelled five corners in the room as "Games and virtual worlds", "Cool AI applications", "Databases and scaling", "Web design" and "Employers and job seekers". Though it seemed to be working in the beginning, and many people were asking what and where the corners were, towards the end most corners were empty. We think the reason was that even though people came to these corners, they saw no one there and went somewhere else. So it seems that it takes people dedicated to a corner to start a community around it. This may be something we can think about and try again in the future...

This time we had only one talk, but it was a good one...

Virtualization

Virtualization, or V12n (as there are 12 chars between 'V' and 'n', I didn't know that), is one of those buzzwords in the IT industry that you hear a lot, but very few people really understand what it means.

So it was great to hear Dan Shearer explain V12n, esp. since he is really passionate about it. Dan is a veteran of open source (he once told me, he first started developing software when I was 2 yrs old), and is a founder of the Samba foundation. But apart from all that, he is one of the smartest people you'll meet. So I was really looking forward to his talk...

Virtualization first began as a mechanism of testing software. As a software developer it has always been a pain to develop and test over all kinds of electronic devices out there. There are different chip sets, operating systems, motherboard and device configurations, and you can never be sure if what you have written works "fine" on all of them. So virtualization began with a purpose of simulating all kinds of hardware, with software. As for the software being tested, it doesn't matter if the underlying system is "real" or "virtual".

So Virtualization is essentially "Abstraction". You can simulate electronics and hardware, physical interfaces, people (how users interact with the system) and even time (speed up or slow down the computation to test for faster devices, and even change the direction of time)...

"All software is crap" (Dan says, not me... ;-) )

The point here is that even if software is perfectly written and tested on all current hardware/software configurations, we never know how it is going to perform in the future on unknown configurations like hardware that is 100 times faster or physical interactions that have not yet been imagined and created!

But these impossible configurations can be "virtually" created and the software can still be tested on these virtual configurations. So, Virtualization gives us a powerful method of preparing and testing for all kinds of strange future situations.

Time travel (oh yeah!)

If we take snapshots of a system every say 10 secs, we could restore these snapshots every second and make time run 10 times faster! Or we can restore these snapshots in reverse and even make time run backwards (virtually of course)...

This can be of tremendous help esp. while debugging. I have always feared programming in C++, as after you have removed all the obvious bugs, the scary part starts... If there are any memory leaks or hidden bugs in the system, the program crashes while running online (and taking down 10 other systems in the process). And there is rarely any way of recreating exactly what happened (unless you have heavy logging). But such backward time-travel could allow you to go back from a crash to see exactly when, where and how the problem started.

I can't wait to actually try out one of these debuggers...

Here are the slides for Dan's talk:
Virtualization - Dan Shearer
View SlideShare presentation or Upload your own. (tags: shearer tech)



Apart from many amazing new attendees we were very happy that Randy Haykin of Outlook Ventures, and who was the author of the original Yahoo strategy in the 90's, joined us.

I hope we continue to attract cool people to the Tech Meetup, and it evolves to be the hub of technologists and tech-preneurs in Edinburgh and Scotland.

</rant>

Previous meetups: First (September) Tech Meetup and the October Tech Meetup

No comments: