Thursday, January 21, 2010

A Journey Ends

Hello Everyone!

With a heavy heart, I have to state that this will be my last blog-post as a Sun Campus Ambassador. January 18th 2010 was a sad day here, at Sun Microsystems Inc. The Sun Campus Ambassador program has been closed all over the world as of Monday.

This announcement ended my wonderful 17 month journey in Sun as a CA. I joined in September 2008 and was a part of Sun till January 2010. The experience is unforgettable and is one of the best parts of my college life.

It would be very ungrateful on my part if I don’t express my gratitude to all the people who have helped me in this journey. I would like to thank everybody who has supported me throughout this program directly or indirectly.

Here is a brief review of my journey of 17 months in Sun.

All this started a year and half ago when my senior and the previous Sun CA of my college, Anil Kuppa graduated and inspired all of us to continue the legacy of the Sun Campus Ambassador program at our campus. He helped us to get in touch with Sun personnel and got interviews fixed for the interested students of my class. I would like to thank him for his guidance and his inspiring aura.

Initially I was guided by Ankit Srivastava and after he left, I came under Rajesh Uma Shankar. Rajesh was a big support in Sun Microsystems for me. Any problem, issue or question, a mail to him was enough. Rajesh has always been there for us and supported us at every moment. In this period I got an opportunity to meet other coordinators like Abhishek Kumar, Anuradha ma’am, etc. who have always led us in the right direction and have taken the Sun CA to a completely new level. Thank you everybody for your constant support and guidance. And a special thanks to Rajesh for everything he did for my college during IAP.

It would be incomplete to talk about the Sun CA program without mentioning Mr. Ganesh Hiregoudar, the program manager for the academic programs (APAC). Ganesh sir was a wonderful mentor and was very understanding. He always motivated us to reach new heights and taught us how to think out of the box. Thank you for everything, sir.

The best part of the Sun CA program was that we could meet a lot of like-minded people. We had an opportunity to collaborate with students from all parts of the country. We all were a team and took the CA program and OSUM forward at our colleges. I made a lot of friends and got to know a lot of people. On this parting day, I wish everybody the best of luck in their future endeavors and hope that someday our paths will cross and we will work together. I will miss you all. :(

One of the biggest element of my term as a Sun CA was OSUM. Big thanks to Gary, Tzel, Cecilia and Eze who have always supported us through OSUM and helped me complete my SCJP and SCWCD through the vouchers.

Throughout my phase as a Sun CA, my biggest support and the back-bone of my tenure as a CA was my college. During my first month, a new open source group, S.O.U.R.C.E, was started at my college with the support of Sun Microsystems Inc. We are greatly indebted to Prof. Venu Gopal Reddy, the principal of my college; Prof. S. Ramachandram, the head of my department when I started my tenure and Prof. Lakshmi Rajamani, the current head of the department for their cooperation in building up a vibrant open source community at my college.

My classmates are a few of the best people I have ever seen. I am extremely grateful to them for extending their helping hand in every event/competition at my college and standing by me at every moment in the past 17 months. I am also thankful to my seniors for their timely advices and great suggestions. My juniors have always been a great support and gave me the courage to do things as a Sun CA and I appreciate their help a lot. Thank you all for your incredible support and cooperation in helping me sustain Osmania University’s reputation at Sun Microsystems Inc. and bringing me to this position. If you go through my blog-posts here, you will realize how much Osmania University has done for me and the open source community.

Before I conclude, I would like to thank my parents from the bottom of my heart for their inspiration and unbeatable guidance and support throughout this period. I am grateful to God for giving me this opportunity and hope I have done justice to my role.

Finally, I will quickly list out the important mile-stones reached in the last 17 months -

  • Inauguration of S.O.U.R.C.E
  • Software Freedom Day 2008
  • The Ref Contest (Received accolades from several people and the idea was replicated in many countries)
  • Establishment of Sun FTP Server at Osmania University
  • Sun Tech Days 2009
  • Sun support in Infinity 2009
  • 18 internships from Sun Microsystems Inc. as a part of Industry Association Program
  • Software Freedom Day 2009

Besides these major mile-stones, Osmania University was a part of several competitions and technical sessions in this period.

My recognitions as "Sun CA of the month" and "Sun CA of the quarter" were the biggest honors for me at Sun.

Well, before I say goodbye, I would like to thank Sun Microsystems Inc. on behalf of Osmania University for giving us this opportunity and at the same time thank Osmania University on behalf of Sun Microsystems Inc. for their unvarying support and cooperation to the open source community.

You can reach me at 14gautam@gmail.com and read my technical articles at http://gautam-m.blogspot.com/. And in case Sun pulls out this blog, I will replicate it elsewhere and provide the link at my tech blog.

Good bye.

Monday, January 11, 2010

Deploying Servlets & JSPs

Java Servlets & JavaServer Pages (JSPs) form the backbone of Web Application Development in Java. Java Servlet Technology and JSP are a part of the Java Platform, Enterprise Edition (JEE). The latest release of JEE (version 6), which was released a few days ago supports Servlets 3.0 and JSP 2.2. I am not going to emphasize the changes made in these versions here, but a quick Google search should give you an idea on the enhancements made.

A Java Servlet is primarily a class which conforms to the Java Servlet API, a protocol by which a Java class may respond to HTTP requests. A servlet may be used to add dynamic content to a Web Server using the Java platform. The generated content is commonly HTML, but may also be other data such as XML, etc. Similar non-Java technologies are CGI and ASP.NET.

JSP is a server side technology similar to that of Servlets. Like Servlets, it is also used to create dynamically generated web pages with HTML, XML, etc. in response to Web client requests. Architecturally, JSP may be viewed as a high-level abstraction of Java Servlets.

Though Servlets and JSPs are used to achieve the same goal, they were designed for two different profiles - developers and designers respectively. A well designed JSP may serve dynamic content using Java without any actual Java code in the JSP; this is achieved using other technologies of Java EE like Expression Language, Custom Tags, etc. Such a model was built to help Web page designers, who are good at HTML, build JSP pages without any need to understand the Java code involved. The developers can support these designers by building custom tags, developing the servlets in patterns like MVC, etc. If you are new to the world of Web Application Development in Java, this concept may seem a little overwhelming in the beginning, but as time progress you will understand this approach better.

To accept HTTP request and to give the users the required responses, a web/app server is used. A web server primarily accepts request and gives responses along with optional data content like images, etc. An extension to the web server is the app server. An app server can also expose business logic and business processes for third-party applications. Further, app servers have features like transaction management, security, etc. Apache Tomcat is a popular web server with Tomcat as the servlet container and GlassFish is a popular app server. Servlets and JSPs have to be deployed on these servers for the outside world to communicate with them. This post will be covering both these servers.

In this blog-post, I will be covering only the deployment phase of Servlets and JSPs. It is assumed that the reader is comfortable with Java and is well acquitted with the basics of JSPs and Servlets. I won’t be explaining any code in this post as most of it is self-explanatory.

Software needed

Note - Installing Java EE 6 will also install GlassFish v3.

To help the readers get a better understanding of the entire process, I will be developing a simple Hello World Application with a Hello World JSP and a Hello World Servlet here.

Here are the source codes of the JSP and the Servlet -

Compile the servlet using the javax.servlet.jar available in glassfishV3\glassfish\modules directory, which is obtained after installing JEE 6 with the following command -

javac HelloWorld.java -classpath install_path\ glassfishV3\glassfish\modules\javax.servlet.jar

Understanding the directory structure

Every web application has a typical directory structure. The JSPs and Servlets along with the required descriptors have to be placed in this directory structure. I will emphasize this structure using the Hello World example. The structure is as follows -

Any file/folder present in the root of the Web Application (like helloWorld.jsp) here is directly available to the client. Even folders present here (except WEB-INF and META-INF) are available directly to the users.

The root also contains a directory called the WEB-INF. This is a required directory and contains three important sub-folders - classes, lib and tags. Every web application also has a deployment descriptor (web.xml). This is also placed here.

The classes directory contains the .class files. The servlet class files are also placed here (like HelloWorld.class).

The lib directory contains any external JAR files that are used in the web application. In this example we have no files in this directory.

The tags directory contains the TLD along the .tag files. As this is an introductory example, we will keep this directory empty. If there are any custom tags being developed in the web application, they should be placed here.

The deployment descriptor defines the mapping between the servlet name and the servlet class.

Download the entire application here.

Deploying the application in Apache Tomcat

Copy the directory HelloWorldApplication built in the above step to the webapps directory of Tomcat i.e. install_path\Apache Software Foundation\Tomcat 6.0\webapps.

Start Tomcat from install_path\Apache Software Foundation\Tomcat 6.0\bin\tomcat6.exe.

To view the JSP page, type http://localhost:8080/HelloWorldApplication/HelloWorld.jsp in the browser and to view the servlet page type http://localhost:8080/HelloWorldApplication/HelloWorld in the browser.

Shut down tomcat6.exe to stop the server.

Deploying the application in GlassFish V3

Start GlassFish using install_path\glassfishV3\glassfish\bin\startserv.bat.

Open http://localhost:4848/ in the browser.

Login with the admin password and navigate to Applications Task in the left-side panel. Click on deploy and select "Local Packaged Directory" and specify the directory built above.

Select the type as "Web Application" and click on "Deploy".

To view the JSP page, type http://localhost:8080/HelloWorldApplication/HelloWorld.jsp in the browser and to view the servlet page type http://localhost:8080/HelloWorldApplication/HelloWorld in the browser.

Stop GlassFish using install_path\glassfishV3\glassfish\bin\stopserv.bat.

That’s it. We have written a web application and deployed it on Apache Tomcat and GlassFish. Still there is one more catch - what if I have to move the web application from one physical server to another physical server? Do I have to build the directory structure again? Well look for the solution in my next blog-post - Building Java Web Archives (WARs).

Monday, January 04, 2010

Sun Certified Web Component Developer

I recently attempted the "Sun Certified Web Component Developer for the Java Platform, Enterprise Edition 5" exam and passed it flawlessly.

The SCWCD exam is primarily for developers specializing in the application of JavaServer Pages and Servlet technologies used to present Web Services and Dynamic Web Content.

The certification tests the developer if he/she understands the basics of JavaServer Pages and Servlet technologies along with the best practices of the Web Application development. The exam also covers a few extreme features like JSTL, EL, design patterns, etc.

The certification, as of today is available in only one flavor - 5 (also known as 1.5). However to attempt the SCWCD exam, one must be a SCJP. Know more about SCWCD at http://www.sun.com/training/certification/java/scwcd.xml

The "Sun Certified Web Component Developer for the Java Platform, Enterprise Edition 5" exam covers objectives like -

  • The Servlet Technology Model
  • The Structure and Deployment of Web Applications
  • The Web Container Model
  • Session Management
  • Web Application Security
  • The JavaServer Pages (JSP) Technology Model
  • Building JSP Pages Using the Expression Language (EL)
  • Building JSP Pages Using Standard Actions
  • Building JSP Pages Using Tag Libraries
  • Building a Custom Tag Library
  • Java EE Patterns

The exam actually costs Rs.7200, but being a Sun employee I got it for free under SAI. :)

A minimum of 70% (49 questions out of 69) is required to clear the exam. And the time duration for the exam is 3 hours.

For preparation of the exam, here is the material that I followed; I think this should be enough to get a respectable score -

Head First Servlets and JSP: Passing the Sun Certified Web Component Developer Exam - Kathy Sierra & Bert Bates

This is a comprehensive book for the SCWCD 5 exam, it covers all the objectives of the exam in a structured approach. Anybody attempting the exam should go through this book at least once.

Buy the book from Amazon.com at http://www.amazon.com/Head-First-Servlets-JSP-Certified/dp/0596005407

Wednesday, December 16, 2009

Remote Desktop Services Using RDP

If you love the data on your desktop, and want it on the move, then this blog-post is for you. In this post, I will emphasize the Remote Desktop Protocol (RDP) of Microsoft using the Remote Desktop Services/Terminal Services.

Remote Desktop Protocol (RDP) is primarily a proprietary protocol developed by Microsoft, which focuses on providing user with a graphical interface to another computer.

Notable features of RDP include -

  • 32-bit color support
  • A 128-bit encryption algorithm and protection from vulnerabilities like the man-in-the-middle
  • Audio redirection
  • File System Redirection
  • Port Redirection
  • Support for Aero Glass Theme and ClearType font smoothing technology
  • Support for Transport Layer Security
  • Multiple monitor support

Remote Desktop Services, formerly known as Terminal Services, is one of the components of Microsoft Windows that allow a user to access applications and data on a remote computer over the network. It is built on the RDP protocol.

The RDP Desktop Services segregates the systems into two groups - the servers and the clients. RDP Servers and Clients exist for several versions of Microsoft Windows, Linux, UNIX, Mac OS X, etc.

This article will focus on configuring both, the RDP Servers and RDP Clients. The configuration steps mentioned here are restricted to the Windows line of Operating Systems - XP, Vista, etc; and for illustration purposes, I will be using Windows 7 as my server and Windows XP running on VirtualBox as my client.

Besides Windows, RDP servers are available for the UNIX Operating System in the form of several open-source projects. UNIX based RDP clients also exist, like the rdesktop.

Configuring RDP Servers

A RDP server is the heart of the RDP protocol. Once a system has been configured as a RDP server, any user with sufficient privileges can log into the system from any terminal and perform their tasks.

Configuring the RDP Server on Windows 7 involves the following steps -

  1. Right-click Computer and select Properties
  2. Click on Remote Settings link present in the left panel
  3. If you want to allow connections from any version of Remote Desktop, select the second option. This is a less secure configuration. However this will allow users from other versions of Windows and UNIX to connect to the system. For e.g. if a system with Windows 7 has been setup as a server, this option will allow older versions of Windows like XP and 2K to access it
  4. On the other hand if you are sure that you want users to connect from the same version of Remote Desktop, select the third option. This is a more secure configuration

Configuring RDP Clients

Once the server has been setup, any RDP Client can hook up to it from any system connected to it in the network.

Establishing a connection to a RDP Server from a system running Windows XP involves the following steps -

  1. Go to All Programs -> Accessories -> Remote Desktop Connection
  2. If the RDP Server has a computer name, enter the name. Else enter the IP address of the RDP Server
  3. Login with the proper username and password; and you are ready to work
  4. At the end, remember to log off and not shut down, because shutting the system down would require a physical startup the next time whereas logging in again can be done remotely

Remember - According the EULA of Microsoft Windows, only a single user can use the copy of Windows at a time. So there can be only one RDP Client active for a particular RDP Server. If another RDP Client logs in, the existing user will prompted to log off.

Facts and Features of RDP

  • RDP uses presentation virtualization to enable a much better end-user experience, scalability and bandwidth experience. RDP plugs into the Windows graphics system the same way a real display driver does, expect that, instead of being a driver for a physical video card, RDP is a virtual display driver
  • RDP usage of bandwidth is far less than expected. This is important as bandwidth is a very big constraint in networking. However, the bandwidth usage varies from the application to application being used. E.g. A slideshow in PowerPoint will drive more bandwidth than a simple movement of the mouse
  • RDP can be tuned as per the requirements of the user. Factors like user-experience can be compromised to reduce the usage of bandwidth. RDP can be configured to give better performance too
  • Color depths have no effect on the user-experience of RDP. Though the initial versions only supported 8bpp (bits per pixel), the newer versions support 32bpp, and in fact Aero needs 32bpp to function properly
  • RDP is highly secure as it supports strong encryption and uses Keberos or TLS/SSL for authentication
  • RDP is not only used in Remote Desktop Services, it is used in several applications like Windows Media Center Extenders (including Xbox 360), Windows Live Mesh, etc.
  • The RDP protocol is completely publicly documented. To understand the internal working of RDP, you can visit - http://msdn.microsoft.com/en-us/library/cc240445(PROT.10).aspx

Well that’s it for a simple RDP Server-Client setup. Do check back soon for my next article on Windows Meeting Space, which is another part of the Remote Desktop Services using the RDP.

Thursday, December 03, 2009

Reset Linux Root Password Using The GRUB

Before I start the central aspect of this article - resetting the Linux root password, let me quickly introduce you to boot loaders and the GRUB.

A boot sequence is the initial set of operations that the computer performs when the power of a computer is switched on. A boot loader typically loads the main Operating System for the computer.

A computer's central processor can only execute program code found in the Read-Only-Memory (ROM) and Random-Access-Memory (RAM). However, when the computer is switched on, it does not have an Operating System in its ROM or RAM. So a computer initially executes a small program stored in a ROM, which in-turn loads the required code and data into the RAM for execution.

This small program which performs this process is known as a bootstrap loader, bootstrap or a boot loader. This program is generally not the Operating System, but a miniature program which will load the required Operating System into the RAM from the non-volatile storage.

There are several popular boot loaders used today - GRUB, BOOTMGR, LILO and NTLDR. The GNU GRUB (GNU GRand Unified Bootloader) is a boot loader package from the GNU Project and is one of the most popular boot loaders available today. LILO (LInux LOader) is a generic boot loader for Linux. NTLDR (NT Loader) is the boot loader for all releases of Microsoft’s Windows NT Operating System. In later versions of Windows like Vista and Windows 7, NTLDR was replaced by the Windows Boot Manager (BOOTMGR).

In this article, we restrict ourselves to the GRUB loader. Typically, a few dual-boot environments and a few Linux based Operating Systems use the GRUB as their boot loader. Here is a screen-shot of the GRUB loader of Red Hat Enterprise Linux 5 -

There are many scenarios where we might need to reset the root password of our Linux system. Consider you have been assigned to a Linux system to work with and the previous owner forgot to give you the root password; maybe you are in the middle of an important project and you don’t have the root password of the system when you need it urgently and the worst part - the system administrator is not in sight; or maybe you just forgot it. The possibilities are limitless.

But remember, before you attempt to change or replace the password of any machine, make sure you have the necessary permissions from the management authorizing it. If not, it can be mistaken as an attempt to hack into the machine, which is not ethical.

  • Start the system, when the selection screen comes up, navigate to the line for Linux and press 'e'
  • Now, select the entry that begins with the word - 'kernel' and again press 'e'
  • Append 'single' to the end of the existing line. Make sure there is a space between the existing content and 'single'
  • Press 'b' to boot into Linux as the root

You are now in the special mode called the "Single-User Mode".

If prompted for the root password here, restart the system and in the previous step, append 'init=/bin/bash' after 'single'

  • Use 'passwd' to specify the new root password

I am sure that reading this procedure would have caused apprehensions in the minds of several readers about the security of their systems. Using this method, anybody can hack your system. So if you want to be careful and avoid such situations, you will need to restrict any modifications to the GRUB. This can be done by protecting the GRUB by using a password.

  • Open the shell prompt and login as the root
  • Use the 'grub-md5-crypt' command to get the MD5 hash of your GRUB password
  • Open '/boot/grub/grub.conf' and add 'password -md5 ' below the timeout field
  • Save and exit

From next time, if you want to edit the GRUB, you will have to press 'p' followed by the GRUB password. The downside of this is that there is an extra password for you to remember. Well, accessibility has always been a trade-off in security.

Note - Changing passwords of a system without proper permissions is unethical and illegal, which may lead to legal complications. So always follow a proper authorization channel before changing the passwords.

Thursday, November 05, 2009

Symbian Operating System

As a part of our Mobile Computing curriculum, we had case studies on several mobile Operating Systems like the Symbian Operating System, Windows CE and the Palm Operating System.

Our faculty encouraged us to explore these topics and present them to our other class-mates so that we get a lot more exposure to the subject.

Thrilled by the fact that the Symbian Operating System is an open-source mobile Operating System, I decided to take up the topic. I put a little effort into understanding the Symbian Operating System. It was exciting to find out my phone (Nokia N73) had the Symbian Operating system and I took an opportunity to tweak around with it.

I also planned a few live demos emphasizing application development on the Symbian Operating System with the help of programming languages like Java and Symbian C++.

With the support from the faculty of my college, a session covering the Symbian Operating System, along with J2ME development on it was presented on 27th October.

The presentation covered the following topics -

  • Introduction to Symbian Operating System
  • A Brief History of Symbian Operating System
  • Symbian Foundation
  • Features of Symbian Operating System
  • Operating System Architecture
  • Memory Management
  • Threading and Security
  • Application Development In Symbian OS

The presentation was followed by two live demos covering -

  • Symbian C++
  • Java 2 Micro Edition

The session concluded with a quick comparison of Symbian C++ and Java ME and how an application can leverage the benefits of the languages when developing an application.

As the target audience for the presentation was primarily the final year students, we had around 40 students participating in the presentation.

At the end we provided a link to the NetBeans website to encourage them to download the latest version of NetBeans along with the mobility pack so that they can go deeper into developing J2ME mobile applications.

Check out the photos at http://picasaweb.google.com/osum.source/SymbianOperatingSystem#

A Linux Workshop

Recently the faculty of my college along with the support of the students organized a Linux workshop. The workshop focused on the basics of the Linux operating system. The workshop was held for two consecutive days in which the students learnt a lot about the fundamentals of Linux.

The workshop was organized on 23rd and 24th October.

The workshop was conducted by Mr. Ahmad Jabas, a PhD scholar of our college. He emphasized various concepts of Linux with the help of the Debian Operating System.

Virtualization was also covered as a part of the workshop with the help of VirtualBox. There was a live demonstration where the Debian Operating System was installed on VirtualBox.

Here is a quick overview of the various activities that were covered in the two days -

Day 1

Topics covered -
  • Introduction to Linux
  • Origin of the Linux Operating System
  • History of the Linux Operating System
  • The GNU Project and Source Code Freedom
  • Linux Philosophy
  • Linux Installation
  • A comparison of the Linux Operating System and the Windows Operating System
  • UNIX/Linux commands

Day 2

Topics covered -
  • Virtualization
  • Virtual Machines
  • System Virtual Machines
  • Process Virtual Machines
  • Full Virtualization
  • Applications of VMs
  • VirtualBox
  • Linux Installation on VirtualBox
  • Shell Scripting

Various demonstrations were given which included several concepts like -
  • Stand-alone installation of Debian
  • VirtualBox installation of Debian
  • Linux commands
  • Shell Scripting

The workshop was very inspirational and several attendees installed the Linux Operating System on their computers and started working with it.

There were about 65 students who attended the workshop both the days.

Oracle Forms

I recently gave a presentation on "Oracle Forms" - a feature of the Oracle developer suite which helps GUI designers to quickly design screens to facilitate easy insertion, deletion, update and query of tables in a database.

The third years were asked to learn about Oracle forms for their final examination. I decided to take this opportunity to talk about it.

Oracle Forms runs on Java containers and the GUI is presented in the form of Java applets to the user. The Java container is known as "Oracle Container for Java (OC4J)" in the Oracle Forms architecture.

The presentation was given on 21st October which was followed by a live demo which emphasized how an Oracle form is created and how is it run with the help of Java containers.

The presentation covered the following topics -

  • Introduction to Oracle Forms
  • Oracle Forms Architecture
  • Single Block Forms
  • Master Detail Forms
  • List Of Values
  • Non-base table fields
  • Triggers
  • Troubleshooting

The presentation was followed by live demos covering -

  • Single Block Forms
  • Master Detail Forms
  • List Of Values

The session concluded with emphasize on technologies like JSPs, Servlets, JDBC, etc. which are swiftly replacing Oracle Forms because of their customizability.

As the target audience for the presentation was primarily the third year students, we had around 40 students participating in the presentation.

Check out the photos at http://picasaweb.google.com/osum.source/OracleForms#

Wednesday, September 30, 2009

SFD 2009 - Competitions & Presentations

This year, as a part of the Software Freedom celebrations, we hosted a few competitions and gave a few informative presentations. Here is a quick overview of them -

Essay Writing Competition

The competition was primarily to encourage participants to explore various Open Source topics - technical and non-technical, and come up with innovative articles. We had a huge response for this and had a tough time selecting the best entries. We had various topics covering different perspectives of the Open Source world. Below are a few of the articles which were really good.

Open Source - The article covered the basic philosophy of Open Source and gave an insight about the economic perspective of OSS. It also emphasized the innovation which drives Open Source products.

VirtualBox - The article covered the salient features of the VirtualBox OSE. It gave a bird's-eye view of VirtualBox, with a focus on the technical strongholds of the virtualization package. It also briefly described the advancements planned in the development of VirtualBox.

Open Source in the Cloud - This article merged the philosophy of Open Source with the innovative paradigm of Cloud Computing. It gave an overview of what Cloud Computing is and highlighted the contribution of Sun Microsystems Inc. to the cloud.

Google Chrome - The article was primarily about the Open Source web browser from Google, Chrome. It focused on the prominent features of the browser and gave a description of features like speed, stability, security, etc.

Top Ten Linux Distributions - The article was mainly a mash-up of the Operating Systems built on the Linux kernel. The author reviewed various Linux in the article. Several flavors like Debian, Slackware, Fedora, Mandriva, OpenSUSE, Ubuntu, Gentoo, LinuxMint, PCLinuxOS and the CentOS were covered in this.

Open Source Quiz

This was one of the most exciting events of Software Freedom Day this year. We wanted more participation of the audience this year, so as to achieve this and bring up the spirit of Open Source in the audience; we planned an Open Source Quiz.

To accommodate the entire audience, the quiz was conducted in two stages - there was a preliminary round which had a questionnaire of around 20 questions. Almost everybody in the audience was interested in the quiz and came forward for the prelims. After the prelims, the top 6 teams were invited for the final round. The round had an oral questionnaire and consisted of around 6 sub-rounds.

Finally at the end of the final sub-round the highest and second-highest scorers were declared the winners. There was a neck-to-neck competition between the teams till the end and had the pulse of the crowd running.

Overall, the quiz was the show-stopper of the day. Hats off to the quiz-masters! - Miss. Devika and Mr. Roopak Bhartee.

Software Freedom Day and Open Source

In order to convey the philosophy of Open Source and the importance of Software Freedom Day to the audience, Mr. Vishwak gave a presentation titled "Software Freedom Day and Open Source".

The presentation emphasized on various concepts like -

  • What is Open Source?
  • Free Software
  • Why the move to Open Source?
  • Perception and participation
  • Software Freedom Day
  • Contribution of Sun Microsystems Inc. to the Open Source world
  • Sun’s Open Source strategy
  • Overview of the Open Source technologies of Sun
  • The session was very informative and the audience had a through insight about the OSS world

Sun Academic Initiative

To help the audience realize the importance of certifications and inform them of the wonderful discounts available on various Sun certifications, Mr. Laxman took up a presentation on "Sun Academic Initiative".

The presentation focused on various topics like -

  • Introduction to SAI
  • Benefits of certifications
  • The Java certification hierarchy
  • The Solaris certification hierarchy
  • The MySQL certification hierarchy
  • Various certifications available as a part of SAI
  • Registration process at SAI
  • A step-by-step explanation of how to purchase a voucher and avail the huge discounts

The session was inspiring and there were several students who were keen on taking up a certification exam. The various tutorials and the learning programs of SAI were highlighted which created a confidence in the interested students to pursue the certification.

On a whole, Software Freedom Day 2009 was a huge success wherein the participants and the organizers enjoyed and learnt a lot.

Photos uploaded at http://picasaweb.google.com/osum.source.

Software Freedom Day 2009

It is finally September and Software Freedom Day is here. This is one day when every Open Source enthusiast feels proud of being one. If you haven’t heard about Software Freedom Day, here is what SFD is all about -

"Software Freedom Day (SFD) is an annual worldwide celebration of Free and Open Source Software. It is a public education effort to celebrate the virtues of FOSS and to encourage its use. It is celebrated on the third Saturday of every September."

Open Source has spread its wings all over the world and Sun Microsystems Inc. being one of the biggest supporters of the Open Source community encouraged many OSUM leaders and Sun Campus Ambassadors to celebrate Software Freedom Day in a grand way.

Osmania University, being a huge supporter of FOSS, wasn’t behind in the grandeur of SFD. We decided on celebrate Software Freedom Day on the third Saturday itself, which was on September 19th.

Due to the recent unforeseen holidays which were declared in our city, there were speculations that 19th might be a working day as a compensation for them. Because of this, our preparations came to a stand-still and we had to wait for a formal announcement. We didn’t get any reliable information till Friday and because of this we had only a day for the publicity in our college. As a lateral consequence of this speculation, we didn’t even get an opportunity to invite other colleges to the event. :(

Well as people say "Things must go on!" and things did go on. Despite these bottlenecks, we had a reasonable crowd of 55 to 60 open source enthusiasts for the event. It was really soothing to see such participation amidst the tailback. The crowd comprised of students from the 2nd, 3rd and 4th years. We weren’t given permission to invite the 1st year students due to security concerns from the college.

I was sure that the students of my college were bored of hearing my presentations by this time, so for a change, I requested a few of my friends to take up the co-ordination of the competitions and presentations. They immediately agreed and showed a lot of interest.

The celebrations of SFD began with a motivating speech by our HOD, Prof. Lakshmi Rajamani. She spoke on Open Source Software and emphasized the support being provided by our college to the OSS world. She gave a brief introduction on SFD and how Osmania University was a part of it over the years.

There were many activities that were held at our campus as a part of SFD. Several competitions were held to motivate the students towards SFD. We had an "Essay writing competition" where the participants were asked to explore various Open Source topics - technical and non-technical and come up with an innovative article. There was an "Open Source Quiz" organized by Mr. Roopak Bhartee and Miss. Devika. A presentation emphasizing the merits and benefits of FOSS was given by Mr. Vishwak. There was a presentation on the "Sun Academic Initiative" by Mr. Laxman. To know more about these events, check out the "SFD 2009 - Competitions & Presentations" blog-post.

The event was concluded by a "Vote of thanks" by me. The entire event was well anchored by Miss. Pravallika.

On a whole, the event was a huge success and there was a lot of enthusiastic response from the participants. The entire S.O.U.R.C.E group was delighted and enthused by the participation of the crowd for the event.

Photos uploaded at http://picasaweb.google.com/osum.source.