MYSPACE QIZMT OPEN SOURCE CONTRIBUTORS' GUIDE

Page created by Ellen Hubbard
 
CONTINUE READING
MYSPACE QIZMT OPEN SOURCE CONTRIBUTORS' GUIDE
MySpace Qizmt
   Open Source
Contributors’ Guide
MYSPACE QIZMT OPEN SOURCE CONTRIBUTORS' GUIDE
Qizmt Coding Standards for Contributors
     There is and has never been deprecation in the functionality of Qizmt, including methods
      exposed to mapreducer, local and remote jobs. We put a fairly heavy amount of thought and
      time into getting the overall design right to prevent this. All versions of Qizmt aim to be 100%
      reverse compatible.
     Always use spaces for indentation, not tabs. 4 spaces per indent. You can set this in your
      Visual Studio settings.
     Try to keep lines shorter than 80 characters.
     When you edit a file, try to stick with the conventions used in the surrounding code.
     Write your contributions using Visual Studio.net 2008 with the VisualSVN plug-in.
     Avoid mixing purely cosmetic changes (such as removing trailing white-space) with functional
      changes, as this makes review of the actual change (whether it’s a check-in or a patch) more
      difficult.
     Never place a ‘{‘ or ‘}’ on the same line as other code, e.g.
      Acceptable                                     Not Acceptable
      public void SomeFunction()                     public void SomeFunction(){
      {                                                //
        //                                           }
      }

     Always submit patches or commits with sufficient comments to well document the change.
      Start with what the change accomplishes followed by as much specification about the change
      as possible.
     Avoid unnecessary inline comments in your code contributions and opt for good variable and
      function names. Unnecessary inline comments typically create a maintenance issue.
MYSPACE QIZMT OPEN SOURCE CONTRIBUTORS' GUIDE
Qizmt Overview
This guide is intended for use by:

         Those who wish to download the Qizmt source code.
         Those who wish to contribute to the Qizmt open source project.

  (2) Log into your MySpace account and send                http://www.myspace.com/qizmt
     qizmt contributor account request to the
               qizmt administrators

          (4) confirm all regression
                 tests pass

         Contributor (you?)              (1) Read the        https://qizmt.googlecode.com/svn/trunk/
                                         Qizmt Coding
                                          Standards
            Visual Studio 2008 SP1       and GPL v3
                with VisualSVN              License

                                          (3) update/
                                           get latest
                                          (6) commit/
                                            check-in

               (5) add features
          add new regression tests
         and run all regression tests
              until they all pass

Walkthrough
    1.    Read the Qizmt Coding Standards
    2.    Read the GPL v3 License, currently at http://www.gnu.org/copyleft/gpl.html
    3.    If not already installed, install Visual Studio 2008 SP1, VisualSVN and TortoiseSVN onto Windows Vista
    4.    Uninstall any existing installation of Qizmt with Window’s add/remove programs tool.
    5.    In Visual Studio, select VisualSVN -> Repo-Browser
    6.    Enter “http://qizmt.googlecode.com/svn/trunk” into the URL box
               o (if you have a contributor accout set up via request to myspace.com/Qizmt you will need to enter
                   “https” instead of “http”)
MYSPACE QIZMT OPEN SOURCE CONTRIBUTORS' GUIDE
7. Select OK and the Repository Browser will show

8. Expand the tree view and Right-click the trunk folder and select checkout.
9. Select OK on the Checkout window
10. Wait for the checkout progress to complete

11. At this point you have downloaded the Qizmt source code
12. Navigate to Qizmt source code directory

13. Run the DistributedObjects.sln solution to load the Qizmt source code into Visual Studio.
14. Select OK on the Source Control prompt

15.   In the Qizmt build folder navigate using
16.   d
17.   d
18.   d
19. Select “Temporarily work uncontrolled” on the next Source Control prompt. The solution has both TFS and SVN
    bindings, however you will just be using SVN. If you commit (check-in) a patch with modifications to the TFS
    bindings it will be rejected

20. Once the project is open you will see a little green light next to all items in the Solutions Explorer. This tells you
    that the item has not changed since you last updated (same idea as “get latest” in TFS)

21. Hit Ctrl-Shift-B to build
22. On your Windows desktop, right click on my computer icon and select properties. Then select advanced system
    settings then select Environment Variables… in the Advanced tab. Under System variables select the path
    variable and select “Edit…” Add ;\MySpace.DataMining.DistributedObjects\bin\Debug\ to the end
    of the path. Then select OK, OK, OK
23. In Windows, click on the start button and enter into start search “visual studio 2008 command prompt” and hit
    enter
24. Using the Visual Studio 2008 Command Prompt, navigate to:
    \MySpace.DataMining.DistributedObjects\bin\Debug\
25. Run the command installutil MySpace.DataMining.DistributedObjects.exe
26. In Windows, click on the start button and enter into start search “Services” and hit enter.
27. Locate the Distributed Objects service

28.   Right click on it and select start
29.   At the Windows command line issue the command qizmt @format machines=localhost
30.   Qizmt is now built and manually installed on your development computer as a single machine cluster.
31.   You can request SVN commit access by sending the following information to http://www.myspace.com/qizmt
      
      [/]
      
      Once, your account is created here are a few things to note:
                  - You will use your google account email address to log in with VisualSVN but replace the http
                     address with https
                  - Navigate to the Source Code tab to get your SVN password for the https SVN repository
You can also read