28 May, 2013

Google Summer of Code 2013 SELECTED

yahoo.....oops Google ! :P

I am so happy to be selected for GOOGLE Summer Of Code (GSOC).

> Selected at the minimum age of 18
> With the second oldest open source organization BRL-CAD
>  Submitted proposal to only one organization
> Only girl from Ahmedabad and Gandhinagar
> My first stipend in Dollars
> My first internship in life

I cant express in words how happy I am. :))

Looking forward to have an awesome summer :')

26 May, 2013

BRLCAD- Fix a bug every 8.7 minutes

With almost 30 years of active development under its belt, BRL-CAD is believed to be the second oldest open source codebase in the world that’s still under active development (VistA, the EHR of the Veterans Administration being the oldest). It has also been the primary tri-service solid modeling CAD system used by the U.S. military to model weapons systems for vulnerability and lethality analyses.
BRL-CAD is a powerful, cross-platform, open source combinatorial Constructive Solid Geometry (CSG) solid modeling system that includes interactive 3D solid geometry editing, high-performance ray-tracing support for rendering and geometric analysis, network-distributed framebuffer support, image and signal-processing tools, path-tracing and photon mapping support for realistic image synthesis, a system performance analysis benchmark suite, an embedded scripting interface, and libraries for robust high-performance geometric representation and analysis.
BRL-CAD is written in a combination of C/C++ code, is just over 1 million lines of code, and includes a developer community of approximately 12 core developers and 20 committers to thesource code repository.
Due to the critical nature of how and where the code is used, BRL-CAD has a long-standing commitment to code quality and implements strict compliance in the code. The BRL-CAD team has spent a lot of time maintaining and cleaning the codebase, including frequent refactoring, and has implemented a variety of quality measures over the course of development, including aCoverity Scan.
The solid modeling system is frequently used in a wide range of military, academic, and industrial applications including in the design and analysis of vehicles, mechanical parts, and architecture. The package has also been used in radiation dose planning, medical visualization, computer graphics education, CSG concepts and modeling education, and system performance benchmark testing among other purposes.
In April 2011, the BRL-CAD source code was put through Coverity Static Analysis as part of its involvement in Coverity Scan, evaluating approximately 840,000 lines of code (1.2 million actual codebase size with comments and whitespace). Over 1,800 defects were flagged by Coverity Scan. According to a project leader, Coverity showed BRL-CAD "a different caliber or class of issue" than other testing and quality measures they have adopted in the past. The project leaders were "quite ecstatic" with the results provided via Coverity Scan, but then needed a way to address these newly found defects.
In November 2011, Christopher Sean Morrison, a lead contributor to BRL-CAD, posted a call for participation to the developer community for a physical get-together to share knowledge about defects and help resolve the issues detected. The call for participation can be found here:
Last week, we were finally able to get a FULL valid Coverity scan of the BRL-CAD source code! If you're interested in helping resolve the  issues detected, please join in our development discussion on the brlcad-devel mailing list or IRC channel and introduce yourself.
The outcome of this effort was published in the Coverity Scan: Open Source Integrity Report of 2011:
The BRL-CAD project community off-site was held in January 2012, just outside Baltimore. Half of the core development team participated in person and two contributed remotely for eight hours a day over a five-day span. The BRL-CAD development team first outlined the entire defect management workflow. 
The goal of the off-site was to fix all outstanding defects instead of a multi-pass "prioritize then fix" approach. Specifically:
  • Inspect and fix all issues discovered by Coverity
  • Peer review, verify, and validate all changes
  • Categorize and document all changes
  • Educate on common defect patterns
So how did the team do?
  • Inspect and fix all issues discovered by Coverity – 90%
  • Peer review, verify, and validate all changes – 10%
  • Categorize and document all changes – 100%
  • Educate on common defect patterns – 100%
The group was able to decrease outstanding defects:
  • From 1,840 to 186 after five days, a beginning defect density of .0022 which decreased to .00022 (defects per thousand lines of code)
  • This equated to approximately 330 defect fixes per day
    • 42 fixes per hour
    • A fix every 87 seconds across the team
  • Per individual developer this equated to approximately
    • 55 defect fixes per day
    • 6.9 fixes per hour
    • A fix every 8.7 minutes
This process illustrates the unparalleled efficiency of open source agile practices.
Event though only 10% of the fixes started the code review process  The feat of being able to address 90% of the defects in a project (about 1,700 defects in this case), by a focused effort of one week, is something that traditional software development methodologies can only dream of.
In open source, this can be just "another day at the office."
Congratulations to the BRL-CAD team for this impressive achievement.More details about the process are available in the Coverity Report.

15 May, 2013

GSoC - 1

BRL-CAD .. One of the awesome open-source communities I have ever seen ! Its totally cool with developers being so much patient, cool, understanding, kind and helpful. I have made two patches for this community, and one for STEPcode. STEP is the Standard for Exchange of Product Model Data used by BRL-CAD and I am planning to work on it.

There is something very fulfilling about getting your first patch committed in some application that will be used by thousands of other folks all across the globe. I read this up somewhere and few days back when I actually submitted a patch I realized how awesome feeling was that. 

This seem to be a really important project for me, where I will apply my C and C++ skills.

Also getting involved and building network in such a great open source community is an awesome feeling. Discussing with great, smart people from different parts of the world and knowing them is fun.

Few developers, whom I would like to thank are Sean Morrison, Mark Pictor, Cliff, Charlie and Erik. Hats-off to you guys !! :))

12 May, 2013

50% Er. Kesha Shah

Yupiie, Semester 4 comes to an end. I never learnt so much as I did this semester. Looking back at past 3 semester, I feel they were a complete waste ! Not actually , though. If I had got this kind of exposure a year ago, I would be a better knowledge human being that now. But, its better to be late than never. Its never too late to mend.

The most highlights of this semester were-

1. I was introduced to open-source communities. I was an active participant at KDE-MEETUP 2013, a two day workshop held at our university. This made my interest grow and made up my mind to start contributing towards it. And today I totally love doing that job in my pass-time :) :*

2. Contributed for Out-reach program for KDE and wrote an article on meetup for dot. Interacted with Pradeepto, the member of board of directors, Carl Symons and his mentor, the editor for dot.kde.org.

3. Completed the TEXAS INSTRUMENTS project started last semester. Though we weren't selected for top3, learnt a lot many things by doing such a huge project.

4. Started android development. A SIG (Special Interest Group) was created in which experts from Monday Mobile came to teach about Android Development. The basics were covered this semester,  with their plan to continue it in next semester.

5. Made an attendance system as a part of Analog Circuits (EL) project. Applied the concepts of BJT's, MOSFETs , Opamps and filters learnt in the course practically. Further, combined it with MSP430 microprocessor and Arduino programming and connected it with intranet of DA-IICT to show the photo of the ID which had entered the class to avoid proxy attendance.

6. Learnt to live life independently. Not being dependent on others. Without worrying about what people bitches and gossips, I learnt to do whatever I feel right. This gave me huge confidence in me and I love the way I am now. :)

7. Made some contributions to the programming-club at DA-IICT. Participated in contest and earned a T-shirt for my programming skills. Also, learnt to set a contest and contributed a problem on spoj ( SPhere Online Judge), for a contest made for juniors. Planning to be in the core committee of programming club at DA-IICT.

8. Started writing article for entelechy - the editorial for DA-IICT.

9. Being highest CPI till last semester, I thought I don't need to study hard this time. And started studying a fortnight before exams. Guess what, this semester also I topped with 9.74 SPI . Thanks to environmental studies for the loss of 0.26. Except for that, an AA grade in all courses. :)

10. Being in the list of "Heros of DA-IICT" for donating blood in the blood donation camp.

11. Won a cool t-shirt from programming club @daiict for my programming skills.  Planning to be committee-member in future.

12. Started writing this blog ! Hope to maintain it :)