Skip to main content

Virtual Labs launched

[21 March 2015] Update: The original URLs for the Software Engineering and Advanced Network Technologies Virtual Labs are temporarily not working. You can access these labs here:

The Virtual Labs project has been formally launched today.

This is a day perhaps many of us have been waiting for long. The Virtual Labs is an ambitious project undertaken by Ministry of Human Resource Development (MHRD) as part of the National Mission on Education through Information and Communication Technology (NMEICT) program. This project, I believe, has the potential to bring considerable improvement in science and engineering education in India. The world has changed, and learning (or teaching) is no more confined to the traditional books. Rapid progress in technologies and increasing accessibility to Internet gives ample scope to gain clear understanding of the subject matter. However, something still lacked there. Contents available online tend to provide theoretical knowledge. In many cases one doesn't get a hands-on exposure to related things and techniques.

Virtual Labs attempts to provide a online laboratory to overcome this lacking.

I've been involved with the development of two virtual labs (Software Engineering Virtual Lab and Advanced Network Technologies Virtual Lab) for more than a year. I've joined this project in 2010 after the pilot phase was over. I remember the initial days when we were struggling with the idea of a virtual experiment:
  • What could be called as an experiment in Software Engineering?
  • How could one possibly work online on a problem on say, class diagram?
  • Even if he is able to do so, how does the user get to know whether he is correct?
And there were many such questions. Not to forget, different technical issues that came along the course. For instance, I had a hard time in finding a software that could automatically generate UML diagram from user input. PlantUML finally saved me.

Apart from Software Engineering Virtual Lab, I've also been a part of the Advanced Network Technologies Virtual Lab. This lab, too, has been quite challenging. Nevertheless, together with other team members, all such challenges have been met till date.

That am a developer of these labs, of course, makes me proud. This is the largest project that I've undertaken till now. Work on these labs have given me exposure to the recent trends in web technologies. This is my first real-life work with Python and Django. And I feel I'm growing a taste in UI design as well. But what is more important: this project gave me a scope to contribute something towards my country and society. Being a "software guy", this is possibly the best way I could do so :)

Work on these two labs would be over in the coming few weeks. Kudos to the qualified team (Tuhin Chakraborty, Sujata Pal, Bibhudendu Pati, Arijit Roy, Tanay Chaki) who have contributed largely to these projects. Hope Virtual Labs would benefit the future scientists and engineers of our country!


Popular posts from this blog

Text Highlighting in Latex

While preparing a manuscript with Latex, it is often useful to highlight the changes made in the current revision with a different color. This can be achieved using the \ textcolor command provided by Latex. For example, \textcolor {red}{Hello World} would display the string "Hello World" in red color. However, the final/published copy of the manuscript does not contain any highlighted text. Therefore, if a large volume of changes were made, it becomes tiresome at the end to find and remove all the individual portions of highlighted text. This can be circumvented by defining a utility command to switch highlighting on and off as desired. In the following, we define a new Latex command, highlighttext , for this purpose. The command takes only a single argument—the text to be highlighted.     \usepackage {color}    % For highlighting changes in this version with red color   \newcommand { \highlighttext }[1] { \textcolor {red}{#1}}   % Remove all text highlighting

Commonly Used Metrics for Performance Evaluation

The following metrics are commonly used when evaluating scenarios related to DTN protocols. Delivery ratio of the messages, Average message delivery latency Overhead ratio (of the underlying routing mechanism) Suppose that $M$ be the set of all messages created in the network and $M_d$ be the set of all messages delivered. Then, the delivery ratio is computed as $|M_d| / |M|$. Now let the $i^{th}$ delivered message was created at time $c_i$ and delivered at time $d_i$. Then the average message delivery latency is computed as $(\sum_{i = 1}^{|M_d|} (d_i - c_i)) / |M_d|$. Note that, in Statistics, mean, median and mode are all the measures of average. But "loosely speaking", unless otherwise specified, we refer to the "mean" value when we say "average." Nevertheless, the MessageStatsReport in the ONE simulator provides a measure of both the mean and median values wherever appropriate. One may refer the above metric as "end-to-end delay.

The ONE KB has a new home

The ONE Knowledge Base is now hosted at If you are unaware, the ONE KB allows you to search the old email archives of the simulator's community. Therefore, if you have any question related to simulation, you may query the existing database at the above link. Chances are good that your question might already have been answered previously. If not, you can still post an email to the community's mailing list. Have you tried the ONE KB already? How was your experience? Was it helpful? Let me know in the comments!