<html>
<head>
    <base href="https://wiki.asterisk.org/wiki">
            <link rel="stylesheet" href="/wiki/s/en/2171/18/9/_/styles/combined.css?spaceKey=TOP&amp;forWysiwyg=true" type="text/css">
    </head>
<body style="background: white;" bgcolor="white" class="email-body">
<div id="pageContent">
<div id="notificationFormat">
<div class="wiki-content">
<div class="email">
    <h2><a href="https://wiki.asterisk.org/wiki/display/TOP/Project+Ideas+for+Getting+Started+With+Asterisk+SCF">Project Ideas for Getting Started With Asterisk SCF</a></h2>
    <h4>Page <b>edited</b> by             <a href="https://wiki.asterisk.org/wiki/display/~beagles">Brent Eagles</a>
    </h4>
        <br/>
                         <h4>Changes (11)</h4>
                                 
    
<div id="page-diffs">
                    <table class="diff" cellpadding="0" cellspacing="0">
    
            <tr><td class="diff-snipped" >...<br></td></tr>
            <tr><td class="diff-unchanged" >_You could simply read all of what is in&amp;nbsp;__[Best Practices]__, but a couple of sections in there are not particularly relevant at this stage._ <br> <br></td></tr>
            <tr><td class="diff-unchanged" >You should also become familiar with [Jira|http://issues.asterisk.org]. All except the most trivial tasks should probably have a task associated with it in the Asterisk SCF project on Jira. <br></td></tr>
            <tr><td class="diff-unchanged" > <br>If you are unsure or have any questions, feel free to touch base with whoever is awake at [irc://chat.freenode.net/#asterisk-scf-dev]. <br></td></tr>
            <tr><td class="diff-snipped" >...<br></td></tr>
            <tr><td class="diff-unchanged" >h3. Rename AsteriskSCF::System::Replica <br> <br></td></tr>
            <tr><td class="diff-added-lines" style="background-color: #dfd;">*Difficulty rating:* {color:#339966}{*}Easy{*}{color} <br> <br> <br></td></tr>
            <tr><td class="diff-unchanged" >Some interfaces in the Asterisk SCF were named before their roles were fully established. This is one of those cases. This is probably better named {{ReplicaControl}} or something to that affect. The actual name is worthy of discussion on [irc://chat.freenode.net/#asterisk-scf-dev]. Get to meet the community and listen to the dev&#39;s gripe about the hardships of &quot;naming&quot;. Changing this interface means modifying Slice and visiting every component so it is a great way to visit all of the components. As it needs to be done in an orderly fashion according to code submission workflow, this is a great task to practice branching, testing and merging. <br> <br>h3. Fix Indentation in Source Code <br> <br></td></tr>
            <tr><td class="diff-added-lines" style="background-color: #dfd;">*Difficulty rating:* {color:#339966}{*}Easy{*}{color} <br> <br></td></tr>
            <tr><td class="diff-unchanged" >The standard indentation for Asterisk SCF is 4 spaces. Some code that predates the guidelines may have different indentation or may be indented with tabs. A quick yet orderly cleanup of sources is needed\! This is a great project for someone handy with scripting and text manipulation and who is interested in getting familiar with &quot;what is where&quot;. <br> <br>h3. Add Tracing to Key Areas <br> <br></td></tr>
            <tr><td class="diff-added-lines" style="background-color: #dfd;">*Difficulty rating:* {color:#339966}{*}Easy{*}{color} {color:#000000}{*}to{*}{color} {color:#0000ff}{*}Medium{*}{color} <br> <br> <br></td></tr>
            <tr><td class="diff-unchanged" >While Asterisk SCF supports logging and you find it everywhere, for whatever reason it is missing from some key areas. All of the areas have yet to be identified, but here are some starters: <br> <br></td></tr>
            <tr><td class="diff-snipped" >...<br></td></tr>
            <tr><td class="diff-unchanged" >h3. Debug and Diagnose Bugs <br> <br></td></tr>
            <tr><td class="diff-deleted-lines" style="color:#999;background-color:#fdd;text-decoration:line-through;">There are not many outstanding bugs in [Jira|http://issues.asterisk.org/] for Asterisk SCF at the moment, but that will change! If a bug looks particularly interesting and you are the type of developer who loves a puzzle, call dibs and get on it. Remember to share what you found out! <br></td></tr>
            <tr><td class="diff-added-lines" style="background-color: #dfd;">*Difficulty rating:* {color:#0000ff}{*}Medium{*}{color} {color:#000000}{*}to{*}{color} {color:#ff0000}{*}Difficult{*}{color} {color:#000000}{*}depending on bug\!*{color} <br></td></tr>
            <tr><td class="diff-unchanged" > <br></td></tr>
            <tr><td class="diff-added-lines" style="background-color: #dfd;"> <br>There are not many outstanding bugs in [Jira|http://issues.asterisk.org/] for Asterisk SCF at the moment, but that will change\! If a bug looks particularly interesting and you are the type of developer who loves a puzzle, call dibs and get on it. Remember to share what you found out\! <br> <br></td></tr>
            <tr><td class="diff-unchanged" >h3. Getting Started Page for New Developers <br> <br></td></tr>
            <tr><td class="diff-added-lines" style="background-color: #dfd;">*Difficulty rating:* {color:#0000ff}{*}Medium{*}{color} <br> <br></td></tr>
            <tr><td class="diff-unchanged" >Tired of reading but not quite ready to dive into code? There is quite a lot of information for newcomers to go through. A syllabus or guide to the most important information would be handy. <br> <br>h3. Add Support for Code Coverage Measurements in Test Applications <br> <br></td></tr>
            <tr><td class="diff-deleted-lines" style="color:#999;background-color:#fdd;text-decoration:line-through;">GCC only! The compiler can instrument the images to emit profile information when the tests run. Coverage analysis tools can examine the data and provide reports on how much of a component is exercised.  <br></td></tr>
            <tr><td class="diff-added-lines" style="background-color: #dfd;">*Difficulty rating:* {color:#0000ff}{*}Medium{*}{color} <br></td></tr>
            <tr><td class="diff-unchanged" > <br></td></tr>
            <tr><td class="diff-added-lines" style="background-color: #dfd;">GCC only\! The compiler can instrument the images to emit profile information when the tests run. Coverage analysis tools can examine the data and provide reports on how much of a component is exercised. <br> <br></td></tr>
            <tr><td class="diff-unchanged" >h3. Convert pjproject&#39;s build system to CMake <br> <br></td></tr>
            <tr><td class="diff-added-lines" style="background-color: #dfd;">*Difficulty rating:* {color:#0000ff}{*}Medium{*}{color} {color:#000000}{*}to{*}{color} {color:#ff0000}{*}Difficult{*}{color} <br> <br> <br></td></tr>
            <tr><td class="diff-unchanged" >The Asterisk SCF crew has integrated pjproject&#39;s build system. Converting to cmake would make things a bit smoother and avoid the occasional &quot;odd&quot; build behavior. <br></td></tr>
    
            </table>
    </div>                            <h4>Full Content</h4>
                    <div class="notificationGreySide">
        <h1><a name="ProjectIdeasforGettingStartedWithAsteriskSCF-Introduction"></a>Introduction</h1>

<p>At some point, a developer will get tired of reading documentation and want to do something. While there is no shortage of work to be done, there are some projects that are better for getting your feet wet than others.</p>

<h2><a name="ProjectIdeasforGettingStartedWithAsteriskSCF-BeforeYouGetStarted"></a>Before You Get Started</h2>

<div class='panelMacro'><table class='warningMacro'><colgroup><col width='24'><col></colgroup><tr><td valign='top'><img src="/wiki/images/icons/emoticons/forbidden.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td>READ THIS FIRST</td></tr></table></div>
<p>The Asterisk SCF project has several guidelines that should be followed when contributing code. Please read the following pages:</p>
<ul>
        <li><a href="/wiki/display/TOP/Style+Guide" title="Style Guide">Style Guide</a></li>
        <li><a href="/wiki/pages/viewpage.action?pageId=9568664" title="C++ Best Practices">C+&#43; Best Practices</a></li>
        <li><a href="/wiki/display/TOP/Code+Reviews" title="Code Reviews">Code Reviews</a></li>
        <li><a href="/wiki/display/TOP/Asterisk+SCF+Testing" title="Asterisk SCF Testing">Asterisk SCF Testing</a></li>
        <li><a href="/wiki/display/TOP/Git+Hints+and+Usage" title="Git Hints and Usage">Git Hints and Usage</a></li>
</ul>


<p><em>You could simply read all of what is in&nbsp;</em><em><a href="/wiki/display/TOP/Best+Practices" title="Best Practices">Best Practices</a></em><em>, but a couple of sections in there are not particularly relevant at this stage.</em></p>

<p>You should also become familiar with <a href="http://issues.asterisk.org" class="external-link" rel="nofollow">Jira</a>. All except the most trivial tasks should probably have a task associated with it in the Asterisk SCF project on Jira.</p>

<p>If you are unsure or have any questions, feel free to touch base with whoever is awake at <a href="irc://chat.freenode.net/#asterisk-scf-dev" class="external-link" rel="nofollow">irc://chat.freenode.net/#asterisk-scf-dev</a>.</p>

<h2><a name="ProjectIdeasforGettingStartedWithAsteriskSCF-ProjectIdeas"></a>Project Ideas</h2>

<h3><a name="ProjectIdeasforGettingStartedWithAsteriskSCF-RenameAsteriskSCF%3A%3ASystem%3A%3AReplica"></a>Rename AsteriskSCF::System::Replica</h3>

<p><b>Difficulty rating:</b> <font color="#339966"><b>Easy</b></font></p>


<p>Some interfaces in the Asterisk SCF were named before their roles were fully established. This is one of those cases. This is probably better named <tt>ReplicaControl</tt> or something to that affect. The actual name is worthy of discussion on <a href="irc://chat.freenode.net/#asterisk-scf-dev" class="external-link" rel="nofollow">irc://chat.freenode.net/#asterisk-scf-dev</a>. Get to meet the community and listen to the dev's gripe about the hardships of "naming". Changing this interface means modifying Slice and visiting every component so it is a great way to visit all of the components. As it needs to be done in an orderly fashion according to code submission workflow, this is a great task to practice branching, testing and merging.</p>

<h3><a name="ProjectIdeasforGettingStartedWithAsteriskSCF-FixIndentationinSourceCode"></a>Fix Indentation in Source Code</h3>

<p><b>Difficulty rating:</b> <font color="#339966"><b>Easy</b></font></p>

<p>The standard indentation for Asterisk SCF is 4 spaces. Some code that predates the guidelines may have different indentation or may be indented with tabs. A quick yet orderly cleanup of sources is needed&#33; This is a great project for someone handy with scripting and text manipulation and who is interested in getting familiar with "what is where".</p>

<h3><a name="ProjectIdeasforGettingStartedWithAsteriskSCF-AddTracingtoKeyAreas"></a>Add Tracing to Key Areas</h3>

<p><b>Difficulty rating:</b> <font color="#339966"><b>Easy</b></font> <font color="#000000"><b>to</b></font> <font color="#0000ff"><b>Medium</b></font></p>


<p>While Asterisk SCF supports logging and you find it everywhere, for whatever reason it is missing from some key areas. All of the areas have yet to be identified, but here are some starters:</p>

<p><em>Coming soon</em>.</p>

<h3><a name="ProjectIdeasforGettingStartedWithAsteriskSCF-DebugandDiagnoseBugs"></a>Debug and Diagnose Bugs</h3>

<p><b>Difficulty rating:</b> <font color="#0000ff"><b>Medium</b></font> <font color="#000000"><b>to</b></font> <font color="#ff0000"><b>Difficult</b></font> <font color="#000000"><b>depending on bug&#33;</b></font></p>


<p>There are not many outstanding bugs in <a href="http://issues.asterisk.org/" class="external-link" rel="nofollow">Jira</a> for Asterisk SCF at the moment, but that will change&#33; If a bug looks particularly interesting and you are the type of developer who loves a puzzle, call dibs and get on it. Remember to share what you found out&#33;</p>

<h3><a name="ProjectIdeasforGettingStartedWithAsteriskSCF-GettingStartedPageforNewDevelopers"></a>Getting Started Page for New Developers</h3>

<p><b>Difficulty rating:</b> <font color="#0000ff"><b>Medium</b></font></p>

<p>Tired of reading but not quite ready to dive into code? There is quite a lot of information for newcomers to go through. A syllabus or guide to the most important information would be handy.</p>

<h3><a name="ProjectIdeasforGettingStartedWithAsteriskSCF-AddSupportforCodeCoverageMeasurementsinTestApplications"></a>Add Support for Code Coverage Measurements in Test Applications</h3>

<p><b>Difficulty rating:</b> <font color="#0000ff"><b>Medium</b></font></p>

<p>GCC only&#33; The compiler can instrument the images to emit profile information when the tests run. Coverage analysis tools can examine the data and provide reports on how much of a component is exercised.</p>

<h3><a name="ProjectIdeasforGettingStartedWithAsteriskSCF-Convertpjproject%27sbuildsystemtoCMake"></a>Convert pjproject's build system to CMake</h3>

<p><b>Difficulty rating:</b> <font color="#0000ff"><b>Medium</b></font> <font color="#000000"><b>to</b></font> <font color="#ff0000"><b>Difficult</b></font></p>


<p>The Asterisk SCF crew has integrated pjproject's build system. Converting to cmake would make things a bit smoother and avoid the occasional "odd" build behavior.</p>
    </div>
        <div id="commentsSection" class="wiki-content pageSection">
        <div style="float: right;" class="grey">
                        <a href="https://wiki.asterisk.org/wiki/users/removespacenotification.action?spaceKey=TOP">Stop watching space</a>
            <span style="padding: 0px 5px;">|</span>
                <a href="https://wiki.asterisk.org/wiki/users/editmyemailsettings.action">Change email notification preferences</a>
</div>
        <a href="https://wiki.asterisk.org/wiki/display/TOP/Project+Ideas+for+Getting+Started+With+Asterisk+SCF">View Online</a>
        |
        <a href="https://wiki.asterisk.org/wiki/pages/diffpagesbyversion.action?pageId=19007133&revisedVersion=10&originalVersion=9">View Changes</a>
                |
        <a href="https://wiki.asterisk.org/wiki/display/TOP/Project+Ideas+for+Getting+Started+With+Asterisk+SCF?showComments=true&amp;showCommentArea=true#addcomment">Add Comment</a>
            </div>
</div>
</div>
</div>
</div>
</body>
</html>