<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: First thoughts on Course Manager code</title>
	<atom:link href="http://blog.salamandersoft.co.uk/index.php/2009/03/first-thoughts-on-course-manager-code/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.salamandersoft.co.uk/index.php/2009/03/first-thoughts-on-course-manager-code/</link>
	<description>SalamanderSoft, SharePoint Learning Kit, Microsoft Learning Gateway &#38; SharePoint Development</description>
	<lastBuildDate>Sat, 28 Aug 2010 12:51:58 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
	<item>
		<title>By: Richard</title>
		<link>http://blog.salamandersoft.co.uk/index.php/2009/03/first-thoughts-on-course-manager-code/comment-page-1/#comment-5</link>
		<dc:creator>Richard</dc:creator>
		<pubDate>Thu, 02 Apr 2009 11:03:53 +0000</pubDate>
		<guid isPermaLink="false">http://blog.salamandersoft.co.uk/2009/03/30/FirstThoughtsOnCourseManagerCode.aspx#comment-5</guid>
		<description>Hi Jon,

Yes just had a demo of it. They have extended it with much needed functionality and it looks useful in their environment. It will be interesting to see how the work ITWorx has been commissioned to do compares.

Their developers have taken the time to understand the code, and know more about it than I do. However, they will be supporting it as part of their product, I&#039;m not convinced that it&#039;s going to be maintainable as open source product installed by people with a wide spectrum of abilities.

Richard</description>
		<content:encoded><![CDATA[<p>Hi Jon,</p>
<p>Yes just had a demo of it. They have extended it with much needed functionality and it looks useful in their environment. It will be interesting to see how the work ITWorx has been commissioned to do compares.</p>
<p>Their developers have taken the time to understand the code, and know more about it than I do. However, they will be supporting it as part of their product, I&#8217;m not convinced that it&#8217;s going to be maintainable as open source product installed by people with a wide spectrum of abilities.</p>
<p>Richard</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Richard</title>
		<link>http://blog.salamandersoft.co.uk/index.php/2009/03/first-thoughts-on-course-manager-code/comment-page-1/#comment-4</link>
		<dc:creator>Richard</dc:creator>
		<pubDate>Thu, 02 Apr 2009 10:59:34 +0000</pubDate>
		<guid isPermaLink="false">http://blog.salamandersoft.co.uk/2009/03/30/FirstThoughtsOnCourseManagerCode.aspx#comment-4</guid>
		<description>Hi Harold,

Thanks for the comments. I wasn&#039;t in the best of moods when I wrote that after wasting all that time. The biggest problem is that if people can&#039;t understand it quickly, how is it suitable to be produced for an Open Source project where the authors aren&#039;t going to be involved.

I can see the power in driving the UI from data stored in the database. I&#039;m just not convinced of the usefulness in mixing that paradigm with the web part paradigm which in itself is a pluggable way of extending the UI. 

Also, I haven&#039;t looked into this yet, but how does it handle internationalization? I think that the text string are stored in the database as well. In that case you need separate sql scripts for each language, and any translators will need to be proficient in SQL. Plus there is text in the resource files as well, so that makes 2 places to maintain languages. For an add-on to a project which has 39 different language translations that is just not maintainable. I guess it might be possible to create a tool which automatically generates the sql based on a language file, but that&#039;s just making extra work again, which a good framework should reduce.

Richard</description>
		<content:encoded><![CDATA[<p>Hi Harold,</p>
<p>Thanks for the comments. I wasn&#8217;t in the best of moods when I wrote that after wasting all that time. The biggest problem is that if people can&#8217;t understand it quickly, how is it suitable to be produced for an Open Source project where the authors aren&#8217;t going to be involved.</p>
<p>I can see the power in driving the UI from data stored in the database. I&#8217;m just not convinced of the usefulness in mixing that paradigm with the web part paradigm which in itself is a pluggable way of extending the UI. </p>
<p>Also, I haven&#8217;t looked into this yet, but how does it handle internationalization? I think that the text string are stored in the database as well. In that case you need separate sql scripts for each language, and any translators will need to be proficient in SQL. Plus there is text in the resource files as well, so that makes 2 places to maintain languages. For an add-on to a project which has 39 different language translations that is just not maintainable. I guess it might be possible to create a tool which automatically generates the sql based on a language file, but that&#8217;s just making extra work again, which a good framework should reduce.</p>
<p>Richard</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jon Nowicki</title>
		<link>http://blog.salamandersoft.co.uk/index.php/2009/03/first-thoughts-on-course-manager-code/comment-page-1/#comment-3</link>
		<dc:creator>Jon Nowicki</dc:creator>
		<pubDate>Wed, 01 Apr 2009 10:59:02 +0000</pubDate>
		<guid isPermaLink="false">http://blog.salamandersoft.co.uk/2009/03/30/FirstThoughtsOnCourseManagerCode.aspx#comment-3</guid>
		<description>I think Hunterstone have done some work on Course Manager.</description>
		<content:encoded><![CDATA[<p>I think Hunterstone have done some work on Course Manager.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Harold Gray</title>
		<link>http://blog.salamandersoft.co.uk/index.php/2009/03/first-thoughts-on-course-manager-code/comment-page-1/#comment-2</link>
		<dc:creator>Harold Gray</dc:creator>
		<pubDate>Mon, 30 Mar 2009 16:50:40 +0000</pubDate>
		<guid isPermaLink="false">http://blog.salamandersoft.co.uk/2009/03/30/FirstThoughtsOnCourseManagerCode.aspx#comment-2</guid>
		<description>Richard,

I&#039;m another who has struggled with the Course Manager codebase at length. Thanks for your comments....

I totally agree with your sentiments as I experienced exactly the same kind of issues that you detail in trying to implement and use the Course Manager myself. Indeed, my first take was one of exhasperation and thinking (like you) &quot;no one but the authors could make any modifications to this&quot; - for all the reasons you cited - no error checking, vb and C# for no apparent reason, complex structure for building the UI and communications with the underlying functionality, code that wasn&#039;t used, the Azman reference. There are also large amounts of code simply commented out - some clearly since they couldn&#039;t release third party applications (Infragistics) to Codeplex so they just downgraded and released the result.

However, I&#039;m a bit hard headed about these kind of things - and I judged that understanding and extending the existing environment would take less time than a complete CM rewrite / debug /qa cycle - since I had not worked with the SLK codebase either... So... I jumped (slipped) (fell) (disappeared) into the environment. 

The result is that I fixed a number of issues and extended the current CM functionality signifcantly. With some understanding / experience with the underlying framework under my belt I&#039;m beginning to be able to make changes quickly and add needed functionality. (Of course the error handling repair and maintainbility issues are both conversations all by itself...)

Examples of the extensions I&#039;ve achieved include:
1. cleaner / iconic UI (mostly NON CODE changes in the SQL Scripts when I finally figured out the underlying structure). 
2. better integration with the SLK (e.g. using SLK Actions and AssigmentProperties funtions).. 
3. addition of an interface via the SLK AssignmentProperties page so you can make the appropriate tweaks (that were clearly needed) - e.g. TIME, Specific Learners, Specific Teachers. (What were they thinking?).
4. single click usability enhancements so the teacher can duplicate an assignment or group - in case they want to repeat particular activity groups / activities - and so they don&#039;t have to type so much... 
5. ability to duplicate and assignment or group - into another CLASS - in case they want to use the same / similar material there.
6. one of the big issues was the (incomplete / nonfunctional) implementation of the Document Picker... you could not navigate to another site / document library. I&#039;ve added a document picker that will show all libraries in the site collection at once - so the teacher doesn&#039;t have to navigate around to find resources....

So the end result is beginning to have some very nice functionality...</description>
		<content:encoded><![CDATA[<p>Richard,</p>
<p>I&#8217;m another who has struggled with the Course Manager codebase at length. Thanks for your comments&#8230;.</p>
<p>I totally agree with your sentiments as I experienced exactly the same kind of issues that you detail in trying to implement and use the Course Manager myself. Indeed, my first take was one of exhasperation and thinking (like you) &quot;no one but the authors could make any modifications to this&quot; &#8211; for all the reasons you cited &#8211; no error checking, vb and C# for no apparent reason, complex structure for building the UI and communications with the underlying functionality, code that wasn&#8217;t used, the Azman reference. There are also large amounts of code simply commented out &#8211; some clearly since they couldn&#8217;t release third party applications (Infragistics) to Codeplex so they just downgraded and released the result.</p>
<p>However, I&#8217;m a bit hard headed about these kind of things &#8211; and I judged that understanding and extending the existing environment would take less time than a complete CM rewrite / debug /qa cycle &#8211; since I had not worked with the SLK codebase either&#8230; So&#8230; I jumped (slipped) (fell) (disappeared) into the environment. </p>
<p>The result is that I fixed a number of issues and extended the current CM functionality signifcantly. With some understanding / experience with the underlying framework under my belt I&#8217;m beginning to be able to make changes quickly and add needed functionality. (Of course the error handling repair and maintainbility issues are both conversations all by itself&#8230;)</p>
<p>Examples of the extensions I&#8217;ve achieved include:<br />
1. cleaner / iconic UI (mostly NON CODE changes in the SQL Scripts when I finally figured out the underlying structure).<br />
2. better integration with the SLK (e.g. using SLK Actions and AssigmentProperties funtions)..<br />
3. addition of an interface via the SLK AssignmentProperties page so you can make the appropriate tweaks (that were clearly needed) &#8211; e.g. TIME, Specific Learners, Specific Teachers. (What were they thinking?).<br />
4. single click usability enhancements so the teacher can duplicate an assignment or group &#8211; in case they want to repeat particular activity groups / activities &#8211; and so they don&#8217;t have to type so much&#8230;<br />
5. ability to duplicate and assignment or group &#8211; into another CLASS &#8211; in case they want to use the same / similar material there.<br />
6. one of the big issues was the (incomplete / nonfunctional) implementation of the Document Picker&#8230; you could not navigate to another site / document library. I&#8217;ve added a document picker that will show all libraries in the site collection at once &#8211; so the teacher doesn&#8217;t have to navigate around to find resources&#8230;.</p>
<p>So the end result is beginning to have some very nice functionality&#8230;</p>
]]></content:encoded>
	</item>
</channel>
</rss>
