<div>Hi All,</div><div><span style="white-space:pre-wrap"> </span>I'm Sudhir. I recently joined Bugzilla developers list. Though i haven't used Bugzilla before in my work, my main purpose is to learn, understand and contribute to open source projects. This is my first open source project participation ever. I want your valuable guidance to learn and enrich my knowledge to become one among you and become an active member of Bugzilla and open source community in large. Below are my brief introduction of myself.</div>
<div><span style="white-space:pre-wrap"> </span></div><div>I'm Sudhir. I live in Bangalore, India. I'm currently working as a software engineer in Symphony Services Pvt. Ltd. I've completed my Bachelor Engg. in Information Science. I've been working in software industry for about 5+ years now. In that 5+ years i got learn Perl and Java by doing various projects. I'd done one project with Python initially in my first company. Currently I'm more comfortable with perl and java than python. Below are some of the projects which i participated during my 5+ years of profession.</div>
<div><br></div><div>Server Statistics: </div><div><span style="white-space:pre-wrap"> </span>language used: Perl</div><div><span style="white-space:pre-wrap"> </span>database: MS Access</div>
<div><span style="white-space:pre-wrap"> </span>platform: windows xp.</div><div><span style="white-space:pre-wrap"> </span>This is a CGI based web application wherein the purpose of the tool was to show some sort of statistics of the two build server. </div>
<div><span style="white-space:pre-wrap"> </span>Here i was supposed to parse 2 xml files(build results on 2 seperate server) and findout the diff of 2 same projects(build on 2 seperate server) and show the results. Later this results had to be stored in database for the managers to analyze the history of the project. This also featured showing a graff of failed no. of projects in a week span on the 2 build server.</div>
<div><span style="white-space:pre-wrap"> </span></div><div>Scenario Based Replication: </div><div><span style="white-space:pre-wrap"> </span>backend: Perl</div><div><span style="white-space:pre-wrap"> </span>frontend: WendynPro(an SAP's proprietary framework for implementing frontend) and java</div>
<div><span style="white-space:pre-wrap"> </span>replication tool: rsync</div><div><span style="white-space:pre-wrap"> </span>Platform: linux.</div><div><span style="white-space:pre-wrap"> </span>This is generally a replication tool for distribute development environment where developers(across the world) can configure their replication request and replication admins then approve the replication.</div>
<div><span style="white-space:pre-wrap"> </span>The purpose was eliminate developer's(in india, israel, palo alto etc.) build time as against the main production server(in germany)</div><div><span style="white-space:pre-wrap"> </span>This had 3 main parts, </div>
<div><span style="white-space:pre-wrap"> </span>- webinterface(or frontend, where developers configure their request) implemented using webdyn pro, </div><div><span style="white-space:pre-wrap"> </span>- the config-generator, a tool written in perl to generate configurable replication request file with each dependency-file's very basic stats, like last modified date and time, filesize. This configuration file stored in main production server. </div>
<div><span style="white-space:pre-wrap"> </span>- actual replicator, this tool will be installed in various replication-needed-location's production server(eg: bangalore, israel, palo alto, sofia etc.). This tool will poll main prodcution server for new req file in some interval period. If present it evaluates each dependency file, and determine whether that file is needed for replication(by comparing its last modified date locally against one in the configuration file) and create a well balanced rsync input file. "Well balaced" meaning if the client production server is configured to run 10 rsync commands parallely then each rsync commands should get a fair amount of bytes to download. For eg: 500MB each or something similar. Unlike 5Kb for one and 1GB for another. Though the later case is valid and sometimes unavoidable the tool tried to create a input files with evenly distributed dependency files to download. Then replicate dependency files using rsync to respective client production server.</div>
<div><br></div><div>Online courses: </div><div><span style="white-space:pre-wrap"> </span>backend: Perl and Java</div><div><span style="white-space:pre-wrap"> </span>frontend: PHP, flash</div>
<div><span style="white-space:pre-wrap"> </span>This product is aimed at providing enough knowledge on ethics and culture in corporate offices. Like anti bribary, anti trust sexual harassment. The customers will have their own admins to manage this for their company. The courses are built with rich html(audio, video, flash). This also has a test and certification. Admins will choose what courses are suitable for what department of the company and assign those to them. Employees take online course, take test. </div>
<div><span style="white-space:pre-wrap"> </span>There is one base product of this online courses and others are mostly different idea of the base product. Each is has its own purpose and features. Best eg. of different product of the base is a product targeted towards different level of users(mostly to top management), suggesting courses(recommendation system using survey). </div>
<div><span style="white-space:pre-wrap"> </span>In this project my contribution was write SOAP services in java, fixing bugs related to base product whose backend is complete perl.</div><div><br></div><div>
I'm currently reading <a href="https://wiki.mozilla.org/Bugzilla:Developers" target="_blank">https://wiki.mozilla.org/Bugzilla:Developers</a> and trying to setup my dev environment locally. </div><div><br></div><div>
--</div><div>Sudhir.</div>