UpperLevel HFOSS Course, CNU, Lambert

From Foss2Serve
(Difference between revisions)
Jump to: navigation, search
(Describes a junior/senior programming course)
 
m
 
(17 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<!DOCTYPE html>
+
=== Overview ===
<html lang="en" dir="ltr" class="client-nojs">
+
<head>
+
<title>Course Template - Foss2Serve</title>
+
<meta charset="UTF-8" />
+
<meta name="generator" content="MediaWiki 1.18.1" />
+
<link rel="alternate" type="application/x-wiki" title="Edit" href="/index.php?title=Course_Template&amp;action=edit" />
+
<link rel="edit" title="Edit" href="/index.php?title=Course_Template&amp;action=edit" />
+
<link rel="shortcut icon" href="/favicon.ico" />
+
<link rel="search" type="application/opensearchdescription+xml" href="/opensearch_desc.php" title="Foss2Serve (en)" />
+
<link rel="EditURI" type="application/rsd+xml" href="http://www.foss2serve.org/api.php?action=rsd" />
+
<link rel="alternate" type="application/atom+xml" title="Foss2Serve Atom feed" href="/index.php?title=Special:RecentChanges&amp;feed=atom" />
+
<link rel="stylesheet" href="/load.php?debug=false&amp;lang=en&amp;modules=mediawiki.legacy.commonPrint%2Cshared%7Cskins.vector&amp;only=styles&amp;skin=vector&amp;*" />
+
<meta name="ResourceLoaderDynamicStyles" content="" />
+
<style>a:lang(ar),a:lang(ckb),a:lang(fa),a:lang(kk-arab),a:lang(mzn),a:lang(ps),a:lang(ur){text-decoration:none}a.new,#quickbar a.new{color:#ba0000}
+
  
/* cache key: mw-foss2serve_:resourceloader:filter:minify-css:4:c88e2bcd56513749bec09a7e29cb3ffa */
+
{{Course Overview
</style>
+
|course=
<script src="/load.php?debug=false&amp;lang=en&amp;modules=startup&amp;only=scripts&amp;skin=vector&amp;*"></script>
+
Programming for HFOSS
<script>if(window.mw){
+
|institution=
mw.config.set({"wgCanonicalNamespace": "", "wgCanonicalSpecialPageName": false, "wgNamespaceNumber": 0, "wgPageName": "Course_Template", "wgTitle": "Course Template", "wgCurRevisionId": 6686, "wgArticleId": 570, "wgIsArticle": true, "wgAction": "view", "wgUserName": "Llambert", "wgUserGroups": ["*", "user", "autoconfirmed"], "wgCategories": ["Course"], "wgBreakFrames": false, "wgRestrictionEdit": [], "wgRestrictionMove": []});
+
Christopher Newport University
}
+
|instructors=
</script><script>if(window.mw){
+
Lynn Lambert
mw.loader.load(["mediawiki.page.startup"]);
+
|offerings=
}
+
Will be offered. work in progress as of Fall 2016
</script>
+
|overview=
<!--[if lt IE 7]><style type="text/css">body{behavior:url("/skins/vector/csshover.min.htc")}</style><![endif]--></head>
+
Junior/Senior programming course for HFOSS, upper level CS elective
<body class="mediawiki ltr sitedir-ltr ns-0 ns-subject page-Course_Template action-view skin-vector">
+
|students=
<div id="mw-page-base" class="noprint"></div>
+
Majors in Computer Science. Class has 25-35 students
<div id="mw-head-base" class="noprint"></div>
+
|prerequisites=
<!-- content -->
+
This assumes that students have had Data Structures and, ideally, a Software Engineering Course.
<div id="content">
+
|infrastructure=
<a id="top"></a>
+
This is a twice a week course with approximately one day for lectures and new material and one day for coding in class, and working in small groups.
<div id="mw-js-message" style="display:none;"></div>
+
}}
<!-- firstHeading -->
+
<h1 id="firstHeading" class="firstHeading">Course Template</h1>
+
<!-- /firstHeading -->
+
<!-- bodyContent -->
+
<div id="bodyContent">
+
<!-- tagline -->
+
<div id="siteSub">From Foss2Serve</div>
+
<!-- /tagline -->
+
<!-- subtitle -->
+
<div id="contentSub"></div>
+
<!-- /subtitle -->
+
<!-- jumpto -->
+
<div id="jump-to-nav">
+
Jump to: <a href="#mw-head">navigation</a>,
+
<a href="#p-search">search</a>
+
</div>
+
<!-- /jumpto -->
+
<!-- bodycontent -->
+
<div lang="en" dir="ltr" class="mw-content-ltr"><table id="toc" class="toc"><tr><td><div id="toctitle"><h2>Contents</h2></div>
+
<ul>
+
<li class="toclevel-1 tocsection-1"><a href="#0._Overview"><span class="tocnumber">1</span> <span class="toctext">0. Overview</span></a></li>
+
<li class="toclevel-1 tocsection-2"><a href="#1._Learning_Objectives"><span class="tocnumber">2</span> <span class="toctext">1. Learning Objectives</span></a></li>
+
<li class="toclevel-1 tocsection-3"><a href="#2._Methods_of_Assessment"><span class="tocnumber">3</span> <span class="toctext">2. Methods of Assessment</span></a></li>
+
<li class="toclevel-1 tocsection-4"><a href="#3._Course_Outline"><span class="tocnumber">4</span> <span class="toctext">3. Course Outline</span></a></li>
+
<li class="toclevel-1 tocsection-5"><a href="#4._Notes_to_Instructor"><span class="tocnumber">5</span> <span class="toctext">4. Notes to Instructor</span></a></li>
+
<li class="toclevel-1 tocsection-6"><a href="#5._Moving_Forward"><span class="tocnumber">6</span> <span class="toctext">5. Moving Forward</span></a></li>
+
</ul>
+
</td></tr></table>
+
<h2><span class="editsection">[<a href="/index.php?title=Course_Template&amp;action=edit&amp;section=1" title="Edit section: 0. Overview">edit</a>]</span> <span class="mw-headline" id="0._Overview"> 0. Overview </span></h2>
+
<table border="1">
+
  
<tr>
+
=== Learning Objectives ===
<th style="text-align:right;"> Course Name
+
</th>
+
<td> <i>course name (include course number if a specific course at an institution)</i>
+
</td></tr>
+
<tr>
+
<th style="text-align:right;"> Course Overview
+
</th>
+
<td> <i>course overview - description, intro/intermediate/advanced, required,elective</i>
+
</td></tr>
+
<tr>
+
<th style="text-align:right;"> Instructor Contact Info
+
</th>
+
<td> <i>(omit for general course categories - e.g. CS1,CS2)</i>
+
</td></tr>
+
<tr>
+
<th style="text-align:right;"> Student Characteristics
+
</th>
+
<td> <i>typical class size, student background, etc (omit for general course categories - e.g. CS1,CS2)</i>
+
</td></tr>
+
<tr>
+
<th style="text-align:right;"> Prerequisites
+
</th>
+
<td> <i>Knowledge required to be successful in this course</i>
+
</td></tr>
+
<tr>
+
<th style="text-align:right;"> Infrastructure
+
</th>
+
<td> <i>classroom, technology, support</i>
+
</td></tr>
+
<tr>
+
<th style="text-align:right;"> Offerings
+
</th>
+
<td> <i>institution, instructor, semester</i>
+
</td></tr>
+
</table>
+
<h2><span class="editsection">[<a href="/index.php?title=Course_Template&amp;action=edit&amp;section=2" title="Edit section: 1. Learning Objectives">edit</a>]</span> <span class="mw-headline" id="1._Learning_Objectives"> 1. Learning Objectives </span></h2>
+
<ul><li> <i>objectives &amp; prerequisites should be active, student-centered, specific, and measurable</i>
+
<ul><li> <i>the student will be able to...</i>
+
</li></ul>
+
</li><li> <i>for the entire course, and/or for FOSS-specific parts of the course</i>
+
</li><li> <i>might include content &amp; process skills</i>
+
</li><li> <i>might consider all levels of Bloom's taxonomy</i>
+
</li></ul>
+
<h2><span class="editsection">[<a href="/index.php?title=Course_Template&amp;action=edit&amp;section=3" title="Edit section: 2. Methods of Assessment">edit</a>]</span> <span class="mw-headline" id="2._Methods_of_Assessment"> 2. Methods of Assessment </span></h2>
+
<ul><li> <i>what will students do in this course, and how will it be evaluated</i>
+
<ul><li> <i>Exams, assignments, projects, etc.</i>
+
</li></ul>
+
</li><li> <i>should be tied to learning objectives</i>
+
</li></ul>
+
<h2><span class="editsection">[<a href="/index.php?title=Course_Template&amp;action=edit&amp;section=4" title="Edit section: 3. Course Outline">edit</a>]</span> <span class="mw-headline" id="3._Course_Outline"> 3. Course Outline </span></h2>
+
<ul><li> <i>major topics, events, milestones</i>
+
</li><li> <i>learning activities that can be adopted or adapted</i>
+
</li><li> <i>new learning activities that should or could be developed</i>
+
</li><li> <i>include links where appropriate</i>
+
</li><li> <i>reading assignments and supporting materials</i>
+
</li><li> <i>or link to course website</i>
+
</li></ul>
+
<h2><span class="editsection">[<a href="/index.php?title=Course_Template&amp;action=edit&amp;section=5" title="Edit section: 4. Notes to Instructor">edit</a>]</span> <span class="mw-headline" id="4._Notes_to_Instructor"> 4. Notes to Instructor </span></h2>
+
<ul><li> <i>Tips, suggestions, lessons learned (warnings)...</i>
+
</li></ul>
+
<h2><span class="editsection">[<a href="/index.php?title=Course_Template&amp;action=edit&amp;section=6" title="Edit section: 5. Moving Forward">edit</a>]</span> <span class="mw-headline" id="5._Moving_Forward"> 5. Moving Forward </span></h2>
+
<ul><li> <i>what next steps are desirable or possible for this course</i>
+
</li></ul>
+
<hr />
+
<p>This work is licensed under a
+
<a rel="nofollow" class="external text" href="http://creativecommons.org/licenses/by-sa/4.0/">Creative Commons Attribution-ShareAlike 4.0 International License</a>
+
</p><p><a href="/index.php/File:CC_license.png" class="image"><img alt="CC license.png" src="/images/foss2serve/2/2a/CC_license.png" width="88" height="31" /></a>
+
</p><p>Materials linked to by this page may be governed by other licenses.
+
</p>
+
<!--
+
NewPP limit report
+
Preprocessor node count: 29/1000000
+
Post-expand include size: 0/2097152 bytes
+
Template argument size: 0/2097152 bytes
+
Expensive parser function count: 0/100
+
-->
+
  
<!-- Saved in parser cache with key mw-foss2serve_:pcache:idhash:570-0!*!*!!en!2!* and timestamp 20160816134259 -->
+
The student will be able to:
</div> <!-- /bodycontent -->
+
* read the code in many HFOSS projects
<!-- printfooter -->
+
** The student will understand some of the current languages and framework
<div class="printfooter">
+
* install and run an HFOSS project on their own machine
Retrieved from "<a href="http://www.foss2serve.org/index.php?title=Course_Template&amp;oldid=6686">http://www.foss2serve.org/index.php?title=Course_Template&amp;oldid=6686</a>" </div>
+
* understand how FOSS and HFOSS projects are maintained (and know how to use git, version control, issue tracking, and communication channels)
<!-- /printfooter -->
+
<!-- catlinks -->
+
<div id='catlinks' class='catlinks'><div id="mw-normal-catlinks"><a href="/index.php/Special:Categories" title="Special:Categories">Category</a>: <ul><li><a href="/index.php/Category:Course" title="Category:Course">Course</a></li></ul></div></div> <!-- /catlinks -->
+
<div class="visualClear"></div>
+
<!-- debughtml -->
+
<!-- /debughtml -->
+
</div>
+
<!-- /bodyContent -->
+
</div>
+
<!-- /content -->
+
<!-- header -->
+
<div id="mw-head" class="noprint">
+
+
<!-- 0 -->
+
<div id="p-personal" class="">
+
<h5>Personal tools</h5>
+
<ul>
+
<li id="pt-userpage"><a href="/index.php/User:Llambert" title="Your user page [.]" accesskey=".">Llambert</a></li>
+
<li id="pt-mytalk"><a href="/index.php/User_talk:Llambert" class="new" title="Your talk page [n]" accesskey="n">My talk</a></li>
+
<li id="pt-preferences"><a href="/index.php/Special:Preferences" title="Your preferences">My preferences</a></li>
+
<li id="pt-watchlist"><a href="/index.php/Special:Watchlist" title="A list of pages you are monitoring for changes [l]" accesskey="l">My watchlist</a></li>
+
<li id="pt-mycontris"><a href="/index.php/Special:Contributions/Llambert" title="A list of your contributions [y]" accesskey="y">My contributions</a></li>
+
<li id="pt-logout"><a href="/index.php?title=Special:UserLogout&amp;returnto=Course+Template" title="Log out">Log out</a></li>
+
</ul>
+
</div>
+
  
<!-- /0 -->
+
=== Methods of Assessment ===
<div id="left-navigation">
+
+
<!-- 0 -->
+
<div id="p-namespaces" class="vectorTabs">
+
<h5>Namespaces</h5>
+
<ul>
+
<li  id="ca-nstab-main" class="selected"><span><a href="/index.php/Course_Template"  title="View the content page [c]" accesskey="c">Page</a></span></li>
+
<li  id="ca-talk"><span><a href="/index.php/Talk:Course_Template"  title="Discussion about the content page [t]" accesskey="t">Discussion</a></span></li>
+
</ul>
+
</div>
+
  
<!-- /0 -->
+
=== Course Outline ===
  
<!-- 1 -->
+
The course will be divided into three parts. In the first, students will learn common languages and frameworks. In the second part, students will install and examine an HFOSS project as a class. In the third, students will choose their own project, follow the communication channels, install it on their machine, and track an issue.
<div id="p-variants" class="vectorMenu emptyPortlet">
+
# Part 1:
<h5><span>Variants</span><a href="#"></a></h5>
+
#* write a Javascript client side program
<div class="menu">
+
#* write a more complicated web page using the Angular JS framework, ideally using a model-view-controller model.
<ul>
+
#* write and demonstrate a PHP program on their own LAMP stack
</ul>
+
#* write a Python program (or Java if students have had Python)
</div>
+
#* use github as a version control for their programs.
</div>
+
# Part2: 
 +
#* implement Ushahidi, OpenMRS or Mifos (for example) as a class on their own machine
 +
#* follow the communication channels (gitter or IRC) for the class project
 +
#* find an issue, find it and fix it in code, follow the process of submitting a fix
 +
# Part3:
 +
#* Find a project and demonstrate it as installed on their machine.
 +
#* Demonstrate that they found and followed appropriate communication channels, issue tracker, and a bug submission.
 +
#* Keep a blog about their progress, ideally being able to find and contribute to a bug.
  
<!-- /1 -->
+
=== Notes to Instructor ===
</div>
+
<div id="right-navigation">
+
+
<!-- 0 -->
+
<div id="p-views" class="vectorTabs">
+
<h5>Views</h5>
+
<ul>
+
<li id="ca-view" class="selected"><span><a href="/index.php/Course_Template" >Read</a></span></li>
+
<li id="ca-edit"><span><a href="/index.php?title=Course_Template&amp;action=edit"  title="You can edit this page. Please use the preview button before saving [e]" accesskey="e">Edit</a></span></li>
+
<li id="ca-history" class="collapsible"><span><a href="/index.php?title=Course_Template&amp;action=history"  title="Past revisions of this page [h]" accesskey="h">View history</a></span></li>
+
</ul>
+
</div>
+
  
<!-- /0 -->
+
* This course has not been taught yet.
  
<!-- 1 -->
+
=== Moving Forward ===
<div id="p-cactions" class="vectorMenu">
+
<h5><span>Actions</span><a href="#"></a></h5>
+
<div class="menu">
+
<ul>
+
<li id="ca-move"><a href="/index.php/Special:MovePage/Course_Template"  title="Move this page [m]" accesskey="m">Move</a></li>
+
<li id="ca-watch"><a href="/index.php?title=Course_Template&amp;action=watch&amp;token=0b360717163423a43bd21c90bb9ae1d3%2B%5C"  title="Add this page to your watchlist [w]" accesskey="w">Watch</a></li>
+
</ul>
+
</div>
+
</div>
+
  
<!-- /1 -->
+
N/A
  
<!-- 2 -->
+
--------------------
<div id="p-search">
+
{{License CC BY SA}}
<h5><label for="searchInput">Search</label></h5>
+
<form action="/index.php" id="searchform">
+
<input type='hidden' name="title" value="Special:Search"/>
+
<input type="search" name="search" title="Search Foss2Serve [f]" accesskey="f" id="searchInput" /> <input type="submit" name="go" value="Go" title="Go to a page with this exact name if exists" id="searchGoButton" class="searchButton" /> <input type="submit" name="fulltext" value="Search" title="Search the pages for this text" id="mw-searchButton" class="searchButton" /> </form>
+
</div>
+
  
<!-- /2 -->
+
Materials linked to by this page may be governed by other licenses.
</div>
+
</div>
+
<!-- /header -->
+
<!-- panel -->
+
<div id="mw-panel" class="noprint">
+
<!-- logo -->
+
<div id="p-logo"><a style="background-image: url(http://ghmain.ischool.drexel.edu/mw/fibonacci-header-small.png);" href="/index.php/Main_Page"  title="Visit the main page"></a></div>
+
<!-- /logo -->
+
+
<!-- Events -->
+
<div class="portal" id='p-Events'>
+
<h5>Events</h5>
+
<div class="body">
+
<ul>
+
<li id="n-POSSE"><a href="/index.php/POSSE">POSSE</a></li>
+
<li id="n-Pathways-Workshop"><a href="/index.php/Pathways_Model_Workshop_2016">Pathways Workshop</a></li>
+
<li id="n-Funding-Opportunities"><a href="/index.php/Funding_Support_for_Instructors">Funding Opportunities</a></li>
+
<li id="n-Workshops"><a href="/index.php/Workshops">Workshops</a></li>
+
</ul>
+
</div>
+
</div>
+
  
<!-- /Events -->
+
[[Category:Courses]]
 
+
[[Category:(H)FOSS Course]]
<!-- Learning Resources -->
+
<div class="portal" id='p-Learning_Resources'>
+
<h5>Learning Resources</h5>
+
<div class="body">
+
<ul>
+
<li id="n-Learning-Activities.2FMaterials"><a href="/index.php/Learning_Activities">Learning Activities/Materials</a></li>
+
<li id="n-Courses"><a href="/index.php/Category:Course">Courses</a></li>
+
<li id="n-HFOSS-Links"><a href="/index.php/HFOSS_Links">HFOSS Links</a></li>
+
</ul>
+
</div>
+
</div>
+
 
+
<!-- /Learning Resources -->
+
 
+
<!-- Projects -->
+
<div class="portal" id='p-Projects'>
+
<h5>Projects</h5>
+
<div class="body">
+
<ul>
+
<li id="n-MouseTrap"><a href="/index.php/Gnome_MouseTrap">MouseTrap</a></li>
+
<li id="n-OpenMRS"><a href="/index.php/Category:OpenMRS">OpenMRS</a></li>
+
<li id="n-Ushahidi"><a href="/index.php/Ushahidi">Ushahidi</a></li>
+
</ul>
+
</div>
+
</div>
+
 
+
<!-- /Projects -->
+
 
+
<!-- Evaluation -->
+
<div class="portal" id='p-Evaluation'>
+
<h5>Evaluation</h5>
+
<div class="body">
+
<ul>
+
<li id="n-Instruments"><a href="/index.php/Evaluation_Instruments">Instruments</a></li>
+
<li id="n-Data"><a href="/index.php/Survey_Data">Data</a></li>
+
</ul>
+
</div>
+
</div>
+
 
+
<!-- /Evaluation -->
+
 
+
<!-- navigation -->
+
<div class="portal" id='p-navigation'>
+
<h5>Navigation</h5>
+
<div class="body">
+
<ul>
+
<li id="n-mainpage-description"><a href="/index.php/Main_Page" title="Visit the main page [z]" accesskey="z">Main page</a></li>
+
<li id="n-help"><a href="/index.php/Help:Contents" title="The place to find out">Help</a></li>
+
<li id="n-Category"><a href="/index.php/Category:Contents">Category</a></li>
+
<li id="n-All-Pages"><a href="/index.php/Special:AllPages">All Pages</a></li>
+
</ul>
+
</div>
+
</div>
+
 
+
<!-- /navigation -->
+
 
+
<!-- SEARCH -->
+
 
+
<!-- /SEARCH -->
+
 
+
<!-- TOOLBOX -->
+
<div class="portal" id='p-tb'>
+
<h5>Toolbox</h5>
+
<div class="body">
+
<ul>
+
<li id="t-whatlinkshere"><a href="/index.php/Special:WhatLinksHere/Course_Template" title="A list of all wiki pages that link here [j]" accesskey="j">What links here</a></li>
+
<li id="t-recentchangeslinked"><a href="/index.php/Special:RecentChangesLinked/Course_Template" title="Recent changes in pages linked from this page [k]" accesskey="k">Related changes</a></li>
+
<li id="t-upload"><a href="/index.php/Special:Upload" title="Upload files [u]" accesskey="u">Upload file</a></li>
+
<li id="t-specialpages"><a href="/index.php/Special:SpecialPages" title="A list of all special pages [q]" accesskey="q">Special pages</a></li>
+
<li><a href="/index.php?title=Course_Template&amp;printable=yes" rel="alternate">Printable version</a></li>
+
<li id="t-permalink"><a href="/index.php?title=Course_Template&amp;oldid=6686" title="Permanent link to this revision of the page">Permanent link</a></li>
+
</ul>
+
</div>
+
</div>
+
 
+
<!-- /TOOLBOX -->
+
 
+
<!-- LANGUAGES -->
+
 
+
<!-- /LANGUAGES -->
+
</div>
+
<!-- /panel -->
+
<!-- footer -->
+
<div id="footer">
+
<ul id="footer-info">
+
<li id="footer-info-lastmod"> This page was last modified on 16 August 2016, at 13:42.</li>
+
<li id="footer-info-viewcount">This page has been accessed 79 times.</li>
+
</ul>
+
<ul id="footer-places">
+
<li id="footer-places-privacy"><a href="/index.php/Foss2Serve:Privacy_policy" title="Foss2Serve:Privacy policy">Privacy policy</a></li>
+
<li id="footer-places-about"><a href="/index.php/Foss2Serve:About" title="Foss2Serve:About">About Foss2Serve</a></li>
+
<li id="footer-places-disclaimer"><a href="/index.php/Foss2Serve:General_disclaimer" title="Foss2Serve:General disclaimer">Disclaimers</a></li>
+
</ul>
+
<ul id="footer-icons" class="noprint">
+
<li id="footer-poweredbyico">
+
<a href="http://www.mediawiki.org/"><img src="/skins/common/images/poweredby_mediawiki_88x31.png" alt="Powered by MediaWiki" width="88" height="31" /></a>
+
</li>
+
</ul>
+
<div style="clear:both"></div>
+
</div>
+
<!-- /footer -->
+
<!-- fixalpha -->
+
<script type="text/javascript"> if ( window.isMSIE55 ) fixalpha(); </script>
+
<!-- /fixalpha -->
+
<script src="/load.php?debug=false&amp;lang=en&amp;modules=skins.vector&amp;only=scripts&amp;skin=vector&amp;*"></script>
+
<script>if(window.mw){
+
mw.loader.load(["mediawiki.user", "mediawiki.util", "mediawiki.page.ready", "mediawiki.legacy.wikibits", "mediawiki.legacy.ajax", "mediawiki.action.watch.ajax"]);
+
}
+
</script>
+
<script>if(window.mw){
+
mw.user.options.set({"ccmeonemails":0,"cols":80,"date":"default","diffonly":0,"disablemail":0,"disablesuggest":0,"editfont":"default","editondblclick":0,"editsection":1,"editsectiononrightclick":0,"enotifminoredits":0,"enotifrevealaddr":0,"enotifusertalkpages":1,"enotifwatchlistpages":0,"extendwatchlist":0,"externaldiff":0,"externaleditor":0,"fancysig":0,"forceeditsummary":0,"gender":"unknown","hideminor":0,"hidepatrolled":0,"highlightbroken":1,"imagesize":2,"justify":0,"math":1,"minordefault":0,"newpageshidepatrolled":0,"nocache":0,"noconvertlink":0,"norollbackdiff":0,"numberheadings":0,"previewonfirst":0,"previewontop":1,"quickbar":5,"rcdays":7,"rclimit":50,"rememberpassword":0,"rows":25,"searchlimit":20,"showhiddencats":0,"showjumplinks":1,"shownumberswatching":1,"showtoc":1,"showtoolbar":1,"skin":"vector","stubthreshold":0,"thumbsize":2,"underline":2,"uselivepreview":0,"usenewrc":0,"watchcreations":0,"watchdefault":0,"watchdeletion":0,"watchlistdays":3,"watchlisthideanons":0,
+
"watchlisthidebots":0,"watchlisthideliu":0,"watchlisthideminor":0,"watchlisthideown":0,"watchlisthidepatrolled":0,"watchmoves":0,"wllimit":250,"variant":"en","language":"en","searchNs0":true,"searchNs1":false,"searchNs2":false,"searchNs3":false,"searchNs4":false,"searchNs5":false,"searchNs6":false,"searchNs7":false,"searchNs8":false,"searchNs9":false,"searchNs10":false,"searchNs11":false,"searchNs12":false,"searchNs13":false,"searchNs14":false,"searchNs15":false});;mw.user.tokens.set({"editToken":"d0ff8d1450aac21fc7db54562b756c0e+\\","watchToken":"a634614e22cecf647f0fb14c7c8856bd+\\"});;mw.loader.state({"user.options":"ready","user.tokens":"ready"});
+
+
/* cache key: mw-foss2serve_:resourceloader:filter:minify-js:4:4d5efbd52f5334e4ac7679441b46fb07 */
+
}
+
</script><!-- Served in 0.145 secs. -->
+
</body>
+
</html>
+

Latest revision as of 17:12, 27 February 2017

Contents

Overview

Course Programming for HFOSS
Institution Christopher Newport University
Instructor(s) Lynn Lambert
Term Will be offered. work in progress as of Fall 2016
Course Overview Junior/Senior programming course for HFOSS, upper level CS elective
Course Length {{{courselength}}}
Student Characteristics Majors in Computer Science. Class has 25-35 students
Prerequisites This assumes that students have had Data Structures and, ideally, a Software Engineering Course.
Infrastructure This is a twice a week course with approximately one day for lectures and new material and one day for coding in class, and working in small groups.


Learning Objectives

The student will be able to:

  • read the code in many HFOSS projects
    • The student will understand some of the current languages and framework
  • install and run an HFOSS project on their own machine
  • understand how FOSS and HFOSS projects are maintained (and know how to use git, version control, issue tracking, and communication channels)

Methods of Assessment

Course Outline

The course will be divided into three parts. In the first, students will learn common languages and frameworks. In the second part, students will install and examine an HFOSS project as a class. In the third, students will choose their own project, follow the communication channels, install it on their machine, and track an issue.

  1. Part 1:
    • write a Javascript client side program
    • write a more complicated web page using the Angular JS framework, ideally using a model-view-controller model.
    • write and demonstrate a PHP program on their own LAMP stack
    • write a Python program (or Java if students have had Python)
    • use github as a version control for their programs.
  2. Part2:
    • implement Ushahidi, OpenMRS or Mifos (for example) as a class on their own machine
    • follow the communication channels (gitter or IRC) for the class project
    • find an issue, find it and fix it in code, follow the process of submitting a fix
  3. Part3:
    • Find a project and demonstrate it as installed on their machine.
    • Demonstrate that they found and followed appropriate communication channels, issue tracker, and a bug submission.
    • Keep a blog about their progress, ideally being able to find and contribute to a bug.

Notes to Instructor

  • This course has not been taught yet.

Moving Forward

N/A


This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License

CC license.png


Materials linked to by this page may be governed by other licenses.

Personal tools
Namespaces
Variants
Actions
Events
Learning Resources
HFOSS Projects
Evaluation
Navigation
Toolbox