<?xml version="1.0" encoding="iso-8859-1"?>
<feed version="0.3" xmlns="http://purl.org/atom/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xml:lang="en">
  <title>Dr. Chuck&apos;s Web Log</title>
  <link rel="alternate" type="text/html" href="http://www.dr-chuck.com/csev-blog/" />
  <modified>2010-03-18T15:41:08Z</modified>
  <tagline></tagline>
  <id>tag:www.dr-chuck.com,2010:/csev-blog//3</id>
  <generator url="http://www.movabletype.org/" version="2.65">Movable Type</generator>
  <copyright>Copyright (c) 2010, csev</copyright>
  <entry>
    <title>Starting on a Sakai Book</title>
    <link rel="alternate" type="text/html" href="http://www.dr-chuck.com/csev-blog/000710.html" />
    <modified>2010-03-18T15:41:08Z</modified>
    <issued>2010-03-18T11:41:08-05:00</issued>
    <id>tag:www.dr-chuck.com,2010:/csev-blog//3.710</id>
    <created>2010-03-18T15:41:08Z</created>
    <summary type="text/plain">I have been trying to find time to write a book about the Sakai experience. I am thinking about a book like &quot;Dreaming in Code&quot; but about Sakai. I will focus on the early years 2004-2007 when I was most...</summary>
    <author>
      <name>csev</name>
      <url>www.dr-chuck.com</url>
      <email>csev@umich.edu</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.dr-chuck.com/csev-blog/">
      <![CDATA[<p>I have been trying to find time to write a book about the Sakai experience.   I am thinking about a book like "Dreaming in Code" but about Sakai. I will focus on the early years 2004-2007 when I was most heavily involved. </p>

<p>It will be a combination of historical description, open source lessons, fun anecdotes, and inside information about what it took to make Sakai happen.</p>

<p>I am going to try to write it as light and high level as possible to appeal to as wide of an audience as I can</p>

<p>I am planning on starting in earnest next week and having a draft done by the Sakai conference in June.</p>

<p>As part of my pre-work, I have developed a time-line that I will use to trigger my memories to write into the book.</p>

<p><a href="http://docs.google.com/Doc?docid=0AbX1ycQalUnyZGZ6YjhoeHdfMjY3ZnBzdHRmaw&hl=en" target="_new">http://docs.google.com/Doc?docid=0AbX1ycQalUnyZGZ6YjhoeHdfMjY3ZnBzdHRmaw&hl=en</a></p>

<p>The timeline is in a Google Doc - If you have any comments or memories or the answers to the questions in the document any help would be much appreciated.</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>Message Never Sent - Sakai Governance</title>
    <link rel="alternate" type="text/html" href="http://www.dr-chuck.com/csev-blog/000709.html" />
    <modified>2010-03-14T15:25:55Z</modified>
    <issued>2010-03-14T11:25:55-05:00</issued>
    <id>tag:www.dr-chuck.com,2010:/csev-blog//3.709</id>
    <created>2010-03-14T15:25:55Z</created>
    <summary type="text/plain">I was going to write a long message to John Norman about wishing for a 2.x PMC that functioned without higher-level priority setting authority and came across this note from John to Clay and Anthony on January 24 about the...</summary>
    <author>
      <name>csev</name>
      <url>www.dr-chuck.com</url>
      <email>csev@umich.edu</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.dr-chuck.com/csev-blog/">
      <![CDATA[<p>I was going to write a long message to John Norman about wishing for a 2.x PMC that functioned without higher-level priority setting authority and came across this note from John to Clay and Anthony on January 24 about the Maintenance Team:</p>

<p><i>"My instinct also is to avoid formality unless it is shown to be needed.  Why don't we just proceed with these people acting in a broadly similar way to an Apache PMC (which allows for anyone to be out of contact for a period) and see if that is good enough.  I'm more interested to know if the maintenance team has managed to get any bugs fixed and what issues are concerning them with regard to their mission to improve the code."</i></p>

<p>Once I saw this, I realized that I could not say it any better than John already had said. </p>]]>
      <![CDATA[<p><b>The message I did not send</b></p>

<p><i>On Mar 13, 2010, at 4:03 AM, John Norman wrote:</p>

<p>Personally, I see it as a valuable function of the MT to 'tidy up' the code base. I am not sure I care when a decision is made so long as (a) it is properly discussed and consulted on and (b) all decisions that affect a release are reviewed at the same time. So I can view this as early opening of the consultation (good) and potentially a process that allows decisions to be reviewed carefully without rushing (also good). So, while I accept Stephen's point, I think I might advocate that we don't wait to consider such issues, but we do insist that they be recommendations and if acted upon (e.g. for testing dependencies) they should be reversible until the tool promotion decision point.</p>

<p>It feels like the PM and/or Product Council should be able to help here</p>

<p>On Mar 14, 2010, at 5:39 AM, John Norman wrote:</p>

<p>I don't see the ambition for the structures that you attribute to them. I think we are seeing incremental steps to fill gaps and respond to community needs. Of course if you don't share those needs it may be hard to empathise and my own view may not be that of other participants in the efforts, but I have none of the intent that you seem to rail against.</i></p>

<p>Chuck's Response:</p>

<p>John, the thing I rail against is the statement you made above - "It feels like the PM/PC should be able to help here".  I interpret (and I think others do as well) that statement as "perhaps the MT should get approval from the PM/PC in order to properly set overall priorities for the community".  What bothers me is that I see a PM/PC structure that seems primarily set up for Sakai 3.x having "authority" over a structure that is set up for Sakai 2.x simply because 3 > 2.</p>

<p>By the way - I am not sure that the MT in its current form *is* the right place for these 2.x discussions either - what I dream of is one place where 2.x is the sole focus - not four places where 2.x is partial focus.  I want separate but equal - I want 2.x to be able to follow its own path without priorities and choices about 2.x being made from the perspective of "what's best for 3.x".  I want a win-win situation not a one-size-fits-all situation.</p>

<p>I *do* want to make sure that things get added to 2.x in order to make 3.x happen as effectively as possible - as a matter of fact my own contributions in 2.x in the past few months have been heavily focused improved connectivity between 3.x and 2.x and I am really excited about the progress and looking forward to when 3.x runs on my campus.  Even in some future state after my campus is running Sakai 3.x in hybrid mode and I am happily using it as a teacher, and perhaps I have even become an active Sakai 3.x contributor, I *still* will be opposed to structurally viewing Sakai 2.x priorities though a Sakai 3.x lens in the name of "overall brand consistency".</p>

<p>And interestingly, if *I* think that the PC/PM is a group that cares mostly about 3.x and you think that the PC/PM cares mostly about 2.x - that itself is an interesting question.  Particularly because you are a member of the PC and I am a confused 2.x contributor.  :)</p>

<p><i>On Mar 14, 2010, at 5:39 AM, John Norman wrote:</p>

<p>PS I have long held that Sakai is a community of institutions, rather than a product. I think the efforts look a little different through that lens.</i></p>

<p>Chuck Wrote:</p>

<p>For Sakai 3.x, I think that it *is* a community of institutions and that is a pretty reasonable structure for Sakai 3.x at this point in its lifecycle - and for Sakai 2.x I think that it is a community of individuals at this point in its lifecycle and that is the perfect structure for Sakai 2.x at this point in time.  *Neither is wrong* - it is the nature of the development phase of each project - and why I am uncomfortable with to our current PC/PM "one-committee-to-rule-them-all" governance (or perceived governance).</p>]]>
    </content>
  </entry>
  <entry>
    <title>Managing Sakai 2.x Going Forward</title>
    <link rel="alternate" type="text/html" href="http://www.dr-chuck.com/csev-blog/000708.html" />
    <modified>2010-03-13T17:28:50Z</modified>
    <issued>2010-03-13T12:28:50-05:00</issued>
    <id>tag:www.dr-chuck.com,2010:/csev-blog//3.708</id>
    <created>2010-03-13T17:28:50Z</created>
    <summary type="text/plain">There is some recent discussion on the Sakai lists about the role of the maintenance team, product council, and product management w.r.t. Sakai 2.x. I have become increasingly frustrated about how this community treating the Sakai 2.x / Sakai 3.x...</summary>
    <author>
      <name>csev</name>
      <url>www.dr-chuck.com</url>
      <email>csev@umich.edu</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.dr-chuck.com/csev-blog/">
      <![CDATA[<p>There is some recent discussion on the Sakai lists about the role of the maintenance team, product council, and product management w.r.t. Sakai 2.x.   I have become increasingly frustrated about how this community treating the Sakai 2.x / Sakai 3.x work.</p>

<p>The thing that frustrates me the most is how there is this notion that somehow we need to alter our approaches to 2.x so as to give Sakai 3.x the greatest benefit and most resources.  This is really grating to me every time I hear even the hint of a win-lose conversation about Sakai 2.x and Sakai 3.x.</p>

<p>The real problem in my opinion is that we have single management structures that are trying to "define Sakai".   </p>

<p>The real problem is that when you only have one management structure responsible for two very different efforts - it is very natural to spend some time thinking about trade-offs.   And because some schools and individuals are a bit "out on a limb" with Sakai 3.x, I see a tendency for people who see themselves as community leaders conveniently conflating the "community will" with their own local risks and issues.</p>

<p>I understand the pressure that people who have bought into 3.x are feeling - it makes perfect sense - the whole community felt that pressure around 2.x in June 2005.   We got through that and we are in a good place now with 2.x.  That sense of pressure and feeling of risk is what spurs the right kind of investment.  I hope that the stakeholders of 3.x see that the only way to reduce their risk must step up and really contribute resources to 3.x.  Believing that somehow risk is reduced by making a "really intricate and clever management structure" is usually a recipe for failure.  If folks delegate the "worry" to a management structure - they are usually disappointed.  They end up with "someone to blame"  but not the result they desired in the first place.</p>

<p>So back to my main concern at hand - "What is the right management structure for 2.x?"   My primary answer is "Not the same management structure as 3.x".  I would like to see these separated and allowed to evolve to meet the different needs of their real stakeholders for 2.x and 3.x.</p>

<p>There will be overlap - of course with the transition and there will be plenty of folks who will be involved in both - and over time as 3.x matures - people will shift - and as 3.x matures - its own management structure will naturally adjust to meet the new realities of the problems facing the development team.</p>

<p>----- Here is one of my responses to a message thread about this topic</p>

<p>On Mar 13, 2010, at 4:03 AM, John Norman wrote:</p>

<p>Personally, I see it as a valuable function of the MT to 'tidy up' the code base. I am not sure I care when a decision is made so long as (a) it is properly discussed and consulted on and (b) all decisions that affect a release are reviewed at the same time. So I can view this as early opening of the consultation (good) and potentially a process that allows decisions to be reviewed carefully without rushing (also good). So, while I accept Stephen's point, I think I might advocate that we don't wait to consider such issues, but we do insist that they be recommendations and if acted upon (e.g. for testing dependencies) they should be reversible until the tool promotion decision point.</p>

<p>It feels like the PM and/or Product Council should be able to help here.</p>

<p>-- Chuck Says</p>

<p>As I listen to this, it all simply seems too complex - particularly for Sakai 2.x.  Sakai 2.x is a mature and stable open source product with solid rhythm and an annual release.  There are about 20 people deeply involved in fixing bugs and moving the product forward and getting releases out.  I love the notion of some strategic 2.x code cleanup and would like to see a place where the 20 people that are working on 2.x could coordinate with each other so we don't open too many construction projects at the same time.  Communication and coordination are really valuable and necessary and the folks doing the work will naturally want to talk to each other about this.</p>

<p>It seems like we spend way too much time debating the "purpose and authority" of the PC, PM, and MT.  That alone suggests a broken structure.</p>

<p>I would suggest that we move 2.x toward a situation where a single named "group/committee/etc" is where 2.x decisions are made - maintenance, release, everything.  Like an Apache PMC for 2.x.</p>

<p>If Sakai 3.x wants layers of management and multiple interlinked committees to guide its progress and a marketing plan etc etc - that is their choice.  I don't personally like that approach to software development and so I can choose not to work on 3.x.  If there was a single place that 2.x was discussed - I would probably join that group as I am quite interested in Sakai 2.x for the long-term because I think that many schools will be running Sakai 2.x for the next 7-8 years and so some investment in 2.x will be warranted for some time.  </p>

<p>I would like to see us starting to apply different approaches to structuring our 2.x effort and 3.x effort - they are at such different phases in their life-cycles and to attempt to come up with the "one true management structure for all time" - seems to be an impossible task - so perhaps we should just accept the fact that 2.x and 3.x are *different* and separate structures for each and let those structures be controlled by the people in the structures and meet the needs of the people doing the work in each activity.</p>

<p>/Chuck</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>App Engine Fix For - ImportError: cannot import name os_compat</title>
    <link rel="alternate" type="text/html" href="http://www.dr-chuck.com/csev-blog/000707.html" />
    <modified>2010-03-12T13:05:15Z</modified>
    <issued>2010-03-12T08:05:15-05:00</issued>
    <id>tag:www.dr-chuck.com,2010:/csev-blog//3.707</id>
    <created>2010-03-12T13:05:15Z</created>
    <summary type="text/plain">One of the more mysterious errors one gets with App Engine is when the application fails to start up with the following error: *** Running dev_appserver with the following flags: --admin_console_server= --port=8080 Python command: /usr/bin/python2.6 Traceback (most recent call last):...</summary>
    <author>
      <name>csev</name>
      <url>www.dr-chuck.com</url>
      <email>csev@umich.edu</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.dr-chuck.com/csev-blog/">
      <![CDATA[<p>One of the more mysterious errors one gets with App Engine is when the application fails to start up with the following error:
<pre>
*** Running dev_appserver with the following flags:
    --admin_console_server= --port=8080
Python command: /usr/bin/python2.6
Traceback (most recent call last):
  File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/
GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/
dev_appserver.py", line 68, in <module>
    run_file(__file__, globals())
  File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/
GoogleAppEngine-default.bundle/Contents/Resources/google_appengine
/dev_appserver.py", line 64, in run_file
    execfile(script_path, globals_)
  File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/
GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/
appengine/tools/dev_appserver_main.py", line 66, in <module>
    from google.appengine.tools import os_compat
ImportError: cannot import name os_compat
</pre>
<p>
<a href="http://dr-chuck.com/images/2010/03/index.php?img=01-app-failed.png" target="_new"> <img src="http://dr-chuck.com/images/2010/03/01-app-failed.png" alt="01-app-failed.png" width="360" align="right"></a>
If you look through the forums there is a lot of talk about Python 2.5 or Python 2.6 and suggestions to go back to Python 2.5 - that seems not to be the problem at all because it fails in 2.5 as well with the same error.
<p>
I have carefully reproduced the problem and it is when a non-administrator person tries to run the App Engine Launcher.  The fix is to simply make the person an administrative user.  And here is the strange thing - once you make the use an "Allow to administer this computer" user and start App Engine once as an the user with admin powers and then log out and take a way admin powers and then log back in - then it works!  Crazy.
<p>
This problem is generally reported on Mac OS 10.6 versions.
<p>
Now after an hour of debugging and researching, I can get back to recording those "introductory - see how easy this to install" videos :)]]>
      
    </content>
  </entry>
  <entry>
    <title>Wandering Code Minstrel - Two Weeks in Europe - IMS Basic Learning Tools Interoperability</title>
    <link rel="alternate" type="text/html" href="http://www.dr-chuck.com/csev-blog/000706.html" />
    <modified>2010-03-11T22:00:59Z</modified>
    <issued>2010-03-11T17:00:59-05:00</issued>
    <id>tag:www.dr-chuck.com,2010:/csev-blog//3.706</id>
    <created>2010-03-11T22:00:59Z</created>
    <summary type="text/plain">I started a tradition last year to try to spend Spring break coding somewhere. This year thanks to gracious support from JISC to participate in the JISC Dev8D Developer Days in London, I had airfare to Europe. I decided to...</summary>
    <author>
      <name>csev</name>
      <url>www.dr-chuck.com</url>
      <email>csev@umich.edu</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.dr-chuck.com/csev-blog/">
      <![CDATA[<p>I started a tradition <a href="http://www.dr-chuck.com/csev-blog/000599.html">last year</a> to try to spend Spring break coding somewhere.  This year thanks to gracious support from JISC to participate in the <a href="http://dev8d.org/" target="_new">JISC Dev8D Developer Days</a> in London, I had airfare to Europe.   I decided to add some pre-and-post travel at my own expense to touch base with some collaborators in Europe.  It was a wonderfully productive trip - here are the details.  </p>

<p>I departed for Zurich on February 20, arriving on Sunday Feb 21 - in order to save costs, I stayed with my good friend Dave LeBow in Zug and commuted to Zurich each day.</p>

<p><b>Monday February 21</b></p>

<p>I spent today at the University of Zurich working with the <a href="http://www.olat.org/" target="_new">OLAT (Online Learning and Training)</a>.   I worked with Joel Fisher, Guido Schnider, Florian Gnagi, and others.   I had built a simple <a href="http://www.olat.org/api/org/olat/course/nodes/CourseNode.html" target="_new">OLAT Course Node</a> extension for IMS Basic LTI which we cleaned up and checked into the 6.4 Branch of OLAT for the next release.  </p>

<p><b>Tuesday February 22</b></p>

<p>I spend most of the day in Zurich with the OLAT team and gave a talk on Basic LTI featuring Marc Alier's <a href="http://vimeo.com/7825070" target="_new">Dinosaur video</a>.  We finished the LTI Course Node and talked about Common Cartridge and QT 2.1 plans.  That night I hopped an EasyJet flight to London.</p>

<p><b>Wednesday February 23 - Saturday February 27</b></p>

<p>I already blogged about <a href="http://www.dr-chuck.com/csev-blog/2010_02.html">my Dev8D experiences</a>.</p>

<p>Generally, I was going all-out every day and every night - I gave a new presentation three of four of the days of Dev8D and was fixing / documenting something nearly constantly.   My most fun talk was my <a href="http://www.dr-chuck.com/dr-chuck/resume/speaking.htm" target="_new">"Informatics: The End of Dilbert"</a> lightening talk - which I had been afraid to give because was my thoughts were still a bit unformed and I thought it might be controversial.   But I figured "what the heck" and the crowd seemed to like it.</p>

<p><b>Sunday February 28</b></p>

<p>Travelled to Cambridge - Talked to Ian and John  about Sakai 3, the Sakai board, and other stuff.  It was nice to catch up in person.  I apologize to their families for taking them away to the Eagle pub on a Sunday afternoon.</p>

<p><b>Monday March 1</b></p>

<p>Visited Matthew Buckett at Oxford.  We reviewed their Sakai installation with Hierarchy - very nice and very very cleverly done with surprisingly simple modifications to Sakai.  Shows the flexibility inherent in Sakai 2's underlying approach.  Matthew also showed me their mobile portal - <a href="http://m.ox.ac.uk" target="_new">m.ox.ac.uk</a> - it is done in DJango and uses a very nice architecture.  I hope to get University of Michigan interested in being a partner in the effort when Oxford open sources it all in a few months.</p>

<p><b>Tuesday March 2</b></p>

<p>Went to the Open University at Milton Keynes - to visit with all my pals there and the <a href="http://olnet.org/" target="_new">OLnet</a> team.   I may get some funding to work with Open University folks such as <a href="http://cohere.open.ac.uk/" target="_new">the Cohere Project</a> that is building a tool to build concept maps of web content.   Cohere is a Firefox Plugin - kind of like CloudSocial - but further ahead and more practical.  I may also do some other things like a CC authoring program or Basic LTI in their production LMS.</p>

<p><b>Wednesday March 3</b></p>

<p>Visited my friends at the Open University of Catelonia (UOC) <a href="http://www.youtube.com/watch?v=ATwP3V0brfI" target="_new">Campus Project</a> and got some updates.  We talked about Open Social and their recent integrations that made MediaWiki and WordPress into <a href="http://campusproject.svn.sourceforge.net/viewvc/campusproject/okiwordpressconnector/trunk/okiwordpressconnector/" target="_new">OKI Bus tools</a>.   It was really clear that there architecture had morphed to become very similar to IMS Basic LTI and that it would be a simple matter to make a Basic LTI Producer for these tools quite easily.</p>

<p>Here is a cool video taped in 2008 in an earlier visit to UOC: <a href="http://www.youtube.com/watch?v=TRBJZ1kpYI4" target="_new">Campus Project Overview</a></p>

<p><b>Thursday March 4</b></p>

<p>Went to visit my Marc Alier and Jordi Piguillem at the Polytechnic University of Barcelona (UPC). There I also met Nikolas Galanis who had done the most recent work on the <a href="http://code.google.com/p/basiclti4moodle" target="_new">Basic LTI support for Moodle 1.9</a> - it was in good shape but we put the finishing touches on it to bring it up to par with the other Basic LTI Consumers.  Thursday evening I ended up at the Universal Disco to spend a few hours to catch up with Lluis Vincent of LaSalle University.</p>

<p><b>Friday March 5</b></p>

<p>We a taped a podcast for Marc's "Bite of the Apple" podcast and talked about things like the history of technology before Windows, Linux and Mac OS/X in the 1990's and how standards and interoperability he been an important part of how we got where we are.  Later Nikolas and I continued to clean up the Moodle 1.9 Consumer.</p>

<p><b>Saturday March 6</b></p>

<p>I continued to work on Moodle from my hotel room doing cleanup and then using it to test me IMS Certification for Basic LTI Tool Consumers and produced this video:</p>

<p><a href="http://www.vimeo.com/9957979" target="_new">http://www.vimeo.com/9957979</a></p>

<p>After three days of coding on Moodle, I gave myself a little "treat" by renting a <a href="http://www.dr-chuck.com/images/2010/03/index.php?img=07-03-10_005700_04.jpg" target="_new">scooter</a> for a few hours and seeing if I enjoyed it.   The scooter was fun but a little scary.  I had one close call that was enough for me to decide (at least for now) - no more scooters for Chuck in Barcelona.</p>

<p>After I came back from scootering, I decided to fix a few Sakai bugs in the JSR-168 portal which were identified during the JISC Dev8D meeting and get that taken care of while it was all fresh in my mind.   I finished the code, tested things, checked in my fixes and went to bed.</p>

<p><b>Sunday March 7</b></p>

<p>The flight back was pretty grueling - I had kind of worn myself down over the two weeks by eating too much rich food and not getting enough sleep.  I felt pretty queasy all the way back.     But I got back in one piece and fell into bed.</p>

<p><b>Monday March 8</b></p>

<p>I woke up with a splitting headache and had to teach my SI502 class at 8:30 AM.  I made it through the class and took a nap in the afternoon.  But then I could not get the idea of a WordPress plugin that I saw at UOC out of my head so I started coding, imitating the <a href="http://campusproject.svn.sourceforge.net/viewvc/campusproject/okiwordpressconnector/trunk/okiwordpressconnector/" target="_new">UOC code</a>.  In four hours where I kept having to take little naps because I felt so woozy, I had a working prototype of a <a href="http://code.google.com/p/basiclti4wordpress/" target="_new">Basic LTI Producer for WordPress</a> which I gleefully sent around screen shots and the URL access information for the Basic LTI tool and quickly got confirmation that it was working from Desire2Learn, Moodle, and Jenzabar.</p>

<p><b>Tuesday March 9</b></p>

<p>Antoni Bertran of the Open University of Catalonia Project quickly imitated the patterns in my WordPress Basic LTI Producer and wrote his own Basic LTI Producer for MediaWiki and <a href="http://code.google.com/p/basiclti4mediawiki/" target="_new">released the source code</a>. </p>

<p><b>Wednesday March 10</b></p>

<p>I got Antoni's MediaWiki plugin installed and running on one of my servers for folks to test and of course it worked great in Desire2Learn, Sakai, Moodle and Jenzabar (this interoperability stuff is starting to feel really fun).  I also helped Steve Swinsberg of Australia National University improve the Sakai Basic LTI Producer so he can plug Sakai tools into uPortal using BasicLTI.</p>

<p>I was feeling well enough to eat solid food again on Wednesday.</p>

<p><b>Thursday March 11</b></p>

<p>I think that I am caught up and ready to go back to programming being a background activity.  It was fun to drop everything else and purely code for 2+ weeks and do so with my best friends and collaborators around the world.  </p>

<p>In summary, I visited two countries, six cities, wrote and committed code in three different open source projects, found the coolest new Basic LTI tools so far (MediaWiki and WordPress).</p>

<p>It just goes to show that sometimes doing a bit of wandering around can result in some really cool things.   I wonder how I can top it during next year's spring break.</p>

<pre>
programmer_mode = off
teacher_mode = on
</pre>]]>
      
    </content>
  </entry>
  <entry>
    <title>Fashion Bug Prank Call - Mandy for the Win!</title>
    <link rel="alternate" type="text/html" href="http://www.dr-chuck.com/csev-blog/000705.html" />
    <modified>2010-03-09T15:23:51Z</modified>
    <issued>2010-03-09T10:23:51-05:00</issued>
    <id>tag:www.dr-chuck.com,2010:/csev-blog//3.705</id>
    <created>2010-03-09T15:23:51Z</created>
    <summary type="text/plain">I seldom blog about my oldest daughter Mandy - she is a bit of an online recluse so I have always respected her privacy. But somehow she found a prank call to Fashion bug in 2008 on YouTube where she...</summary>
    <author>
      <name>csev</name>
      <url>www.dr-chuck.com</url>
      <email>csev@umich.edu</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.dr-chuck.com/csev-blog/">
      <![CDATA[<p>I seldom blog about my oldest daughter Mandy - she is a bit of an online recluse so I have always respected her privacy.    But somehow she found a prank call to Fashion bug in 2008 on YouTube where she was the one who was on the receiving end of the prank.  I thought it was funny - so I figured I would share.</p>

<p><a href="http://www.youtube.com/watch?v=rwS77fXgsNI" target="_new">http://www.youtube.com/watch?v=rwS77fXgsNI</a></p>

<p>I have to agree with one of the commenters in the YouTube Video,"Wow. That girl at Fashion Bug kind of pwn'd&#65279; you guys...".    Smoothly done.  Dad is proud.</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>My Experiences at Dev8D-2010 (Sponsored by JISC)</title>
    <link rel="alternate" type="text/html" href="http://www.dr-chuck.com/csev-blog/000704.html" />
    <modified>2010-02-28T08:07:12Z</modified>
    <issued>2010-02-28T03:07:12-05:00</issued>
    <id>tag:www.dr-chuck.com,2010:/csev-blog//3.704</id>
    <created>2010-02-28T08:07:12Z</created>
    <summary type="text/plain">I came to Dev8D in London with two tasks in mind. First, the IMS Global Learning Consortium had just released the public draft of the IMS Basic Learning Tools Interoperability specification and I needed to come up with some materials...</summary>
    <author>
      <name>csev</name>
      <url>www.dr-chuck.com</url>
      <email>csev@umich.edu</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.dr-chuck.com/csev-blog/">
      <![CDATA[<p>I came to Dev8D in London with two tasks in mind.  First, the IMS Global Learning Consortium had just released the public draft of the IMS Basic Learning Tools Interoperability specification and I needed to come up with some materials to help developers understand and use the specification.  My second goal was to give a workshop based on my O'Reilly book titled, "Using the Google App Engine".  This was my first Dev8D experience so I was not sure what to expect.</p>

<p>This is one of many Dev8D happy stories.  You can visit the Dev8D wiki see the other <a href="http://wiki.2010.dev8d.org/w/Happy_Stories" target="_new">Dev8D Happy Stories</a>.</p>

<p>Like any good procrastinator, I was putting the finishing touches on my PHP sample application for IMS Basic LTI on the flight and train ride into London.  I knew it would be a bit rough around the edges but since I had a free laptop and free iPod as inducements to get folks to try the software out, I figured I would have some takers who would help me work out the kinks and I could work on things throughout Dev8D.</p>

<p>On the first day, I spent most of my time either in the Base Camp or in the Expert talk area.  When I gave my first expert talk, my job was to do a sales pitch to the developers in the audience to convince them that my bounty (building the best LTI tool) was (a) the best bounty and (b) I would be able to help them succeed.  Since I had just finished the sample code the night before, I did not have slides ready to describe my sample code - so I have a general talk about how awesome Basic LTI was in general and promised to have a tutorial ready for tomorrow.  I told them to download the code and start hacking.  It turned out that a few of the attendees already worked on their campus VLE and a better way of plugging in an external tool was quite attractive to them o we had a few programmer teams off and running.</p>

<p>I did not want to disappoint "Team Tools Interoperability" so I worked late on Wednesday night to build a set of slides on how to work with the sample code for my Thursday expert talk.  On Thursday morning, I started talking with some of the programmers and explaining things and decided that I needed to add a feature to my sample application (Classified ads) and then add more slides to my tutorial just in time for my afternoon expert talk on Learning Tools Interoperability.</p>

<p>I decided to sign up for a 10-minute lightening talk about "Teaching Programming to non-Programmers" - this is something I think a lot about and get "a little cranky from time-to-time"  I have written a few blog posts expressing my frustration abut the  way we teach the first "programming class" but had been nervous about giving a talk about the topic (which is a bit critical of the status quo). </p>

<p>I did not have enough time to make slides for my lightening talk so I just scribbled down some rough notes and started talking off the cuff.  It seemed like the audience was not going to lynch me so I kept talking about increasingly non-status-quo radical ideas bout what was wrong with the current approach and how I saw it differently in the future.  I just said what I felt about the matter using very direct and risky language and let the chips fall.  By the end, I figured I had so much that I would be escorted from the premises.   </p>

<p>When I stopped talking, I waited for the questions or criticism.  But instead people started telling me their own stories about their own frustration with the status quo in teaching about technology.  These conversations continued into the evening party.  At some point in these conversations, I realized that I was among people who had made it through the educational system and came through on the other side.  They could see that programming, networks, data, technology, etc was a wonderfully creative place to be and a lot of fun.   And most of the folks wish that lots of other people could share the fun we were all having.  I was among my own kind - those who think of computing and technology as a form of creative expression.</p>

<p>But there was no time to rest - I had my Google App Engine Workshop to give - so I again on Thursday night I stayed up late getting prepared for the Friday workshop.  </p>

<p>On Friday morning morning, both of the teams working on Basic LTI had found a bug in the Moodle support for BasicLTI.   I had meant to test it out myself - but ran out of time - so we sat down Friday morning and found and fixed the code.    Steve Coppin had already found and fixed one bug in the Moodle code (the hard one) and sent it to the Moodle Basic LTI team.  I helped Steve find the last (easy) bug and got all the teams going again.</p>

<p>In the afternoon on Friday, after a bit of a scare getting my handouts printed (the University of London Union staff totally saved me!) and finding a Mac Air VGA adapter (yikes!) things settled down and my workshop started.  </p>

<p>Since most of the folks at the meeting were geeks - getting software installed and the simple demos working was a piece of cake.  I quickly sold the books I had brought over - so I had enough money for cab fare for my return.   We cruised through the first 3 hours of the lectures and hands-on exercises having a great time it was fun to teach a new language to existing programmers - we could move pretty quickly.  </p>

<p>Then we got to Chapter 8 about how App Engine does not support relational data but instead the Datastore is sorted, sharded data aimed at quickly reading through large amounts of data.   As I was describing the advantages of Data Store - the crowd started to get a bit "restless".   They started thinking that App Engine was kind of crappy and started asking even more tough questions.  I started to defend App Engine and point out its strengths and we moved into a free flowing discussion that went from search engine architecture to the future of computer science - reacting to the in-depth questions made me think a lot on my feet about "how" and "why" and "what this all means in the grand scheme of things". </p>

<p>The group discussion that ensued was lovely - and by the end, I think that we all learned something by having our collective thinking bent one way and then another exploring this we technology and approach to data storage.  I now I learned plenty during the impromptu "debate" part of the evening.</p>

<p>The awards dinner on Friday was great fun - you could start to see the JISC leaders and organizing committee relax a bit - we were past the half-way point and everything was going fine.</p>

<p>Saturday morning, I no longer had any more formal duties so I figured I would relax and judge the Basic LTI competition for the "bounty".  There was some space in the Arduio hardware workshop so I decided to sit in and learn how to teach using Arduino.  I was having great fun learning Arduino and making an LED blink on and off when Tobias Schiebeck of Manchester came in because he was having trouble plugging Access Grid into Sakai using JSR-168 and he thought there might be a bug in JSR-168.  He showed me what was happening and it looked like a bug so I stepped out of the Arduion workshop to look at it more thoroughly.</p>

<p>I had written the support for Sakai for JSR-168 back in 2005 and the bug was something I sort-of remember in the back of my mind as something that I had never fully tested.   It had to do with sessions of different scope in JSR-168. Now he was getting stuck - his application was working but there was some yucky text on the screen because of the bug.  He had even fixed one bug and then found another bug and had sent a note to the developers list some time ago which somehow I had missed.  So we started to jointly hack on Sakai's JSR-168 support.  I wanted to figure this out once and for all and get it fixed right.  Tt was great to have Tobias sitting next to me who (a) needed the fix, (b) knew Sakai internals pretty well, and (c) would help me work through the issues, and (d) would use the fix immediately.</p>

<p>We started about 10 AM - it was slow going at first because I had not touched the code in five years - but Tobias knew the code well enough to help me start to remember things.  We quickly narrowed the problem down to the code he had patched - but his patch was not enough.   So we just kept digging - we broke for a quick lunch and got back to coding and debugging.    I kept being pulled out to judge the prizes and other things but would always come back and code more.  We worked through the awards ceremony and it started to feel closer and closer.  ANd finally I realized what was going wrong at a high level and started to narrow down the problem and solution.  We started trying things and we were both testing and editing our own copy of Sakai at the same time.  I got closer and closer - but finally Tobias had to leave to catch his 6PM train.  I told him to save his version of the code and pack up while I ran one more test that I thought was finally going to make it work.  He stood there as my Sakai instance restarted and after a few minutes we ran the test and realized that had the fix.  Tobias was quite happy - as he ran to the train to go home to Manchester.  In four hours, together we had cracked a bug that had eluded me for five years hidden deep in the code of Sakai.  </p>

<p>By the time we were done, the room had become empty - and the staff were cleaning up the papers - and had taken away our power plug - and the food was gone - but we got the bug fixed and finished and TObias made his train with five minutes to spare!</p>

<p>Back to the main reason I came to Dec8D, the IMS Basic LTI prize winners were great - they had built and integrated their tools into Moodle, Sakai, Blackboard, and WebCT using Basic LTI in less than 48 hours.  I was really proud.  One of the projects integrated an existing reading list application and the other used Apache Wookie to plug widgets into a learning management system using Basic LTI. </p>

<p>Afterwards, I talked to both teams about helping work on and support the Moodle Basic LTI software and I think that this might work out. </p>

<p>So in summary, I cam with two ideas in mind and ended up doing a lot of things that just popped up as an opportunity.   I worked on code from five years ago and worked on code that will be in the next release of Moodle - I did a bit of teaching and a lot of learning.  A big "thanks" to Dan Hagon, Scott Wilson, Mark Johnson, Steve Coppin, and Ben Charlton.</p>

<p>I will write a separate blog post with screen shots of the software when I get more time!  We awarded the Asus EEPC and iPod provided by Blackboard and gave away IMS T-Shirts - I was quite thankful as my luggage would be much lighter for the rest of the trip!</p>

<p>Being in the same rooms for four days with such smart people in a completely supportive environment (with plenty of snacks) was like several weeks of working by myself in terms of the variety of things I worked on.  I made progress on so many fronts and had such a great time doing it.</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>Response to &quot;Computer Science Reform&quot; From Mark Guzdial</title>
    <link rel="alternate" type="text/html" href="http://www.dr-chuck.com/csev-blog/000703.html" />
    <modified>2010-02-26T18:39:59Z</modified>
    <issued>2010-02-26T13:39:59-05:00</issued>
    <id>tag:www.dr-chuck.com,2010:/csev-blog//3.703</id>
    <created>2010-02-26T18:39:59Z</created>
    <summary type="text/plain">Update: This is getting interesting. The two people making comments are me and Alan Kay. Holey crap - that is like David versus Goliath - lucky for me it seems as though we are in agreement so far otherwise I...</summary>
    <author>
      <name>csev</name>
      <url>www.dr-chuck.com</url>
      <email>csev@umich.edu</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.dr-chuck.com/csev-blog/">
      <![CDATA[<p><b>Update:</b>  This is getting interesting.  The two people making comments are me and Alan Kay.  Holey crap - that is like David versus Goliath - lucky for me it seems as though we are in agreement so far otherwise I would quickly withdraw and lick my wounds.  Read below for the latest in the discussion.</p>

<p>Jim Eng is always looking for something to get me excited :)   He passed along this blog post from Mark Guzdial of Georgia Tech:</p>

<p><a href="http://computinged.wordpress.com/2010/02/25/a-computing-education-debate-in-cacm-but-not-about-programming/#comment-1555" target="_new">Mark's Post</a></p>

<p><i>The March 2010 Communications of the ACM (CACM) includes publication of two Blog@CACM pieces, a sort of point-counterpoint.  CACM published my piece about “How we teach computer science is wrong,” where I argued that dumping students in front of a speeding compiler is not the best way to ramp students up into computing, and that we might think about ...</i></p>

<p>I am increasingly finding myself the "mad prophet" of Technology Education - I think that we are an important point where Computer Science *is* becoming a science - and that is cool.  But the flip side is that we (as a society) need to stop looking to Computer Science Departments (and the NSF CISE Directorate) for the proper way forward in regards the first computational experiences.  </p>

<p>To this end, I have started a new textbook that has plenty of useful "computing" in it but virtually no "Computer Science" in it.  This is an experiment for me to put my money where my mouth is - instead of just being critical of the "ACM CS1 Dogma" that I would try to come up with something better.  But until I have it all figured out, I always have time for a rant to fire a shot across the bow of the CS1 curriculum.  I know I am small and they are large and powerful and entrenched - but what the heck :).</p>

<p><b>Here is my comment on Mark Guzdial's post:</b></p>

<p>I personally am highly critical of how technology is taught and how  Computer Science thinks technology should be taught.  In reflecting on my years as a Computer Science student and years as a Computer Science teacher, I have reached the following conclusion.  Computer Science is not the same thing as Technology Literacy.  Computer Science is a deep and wonderful field that employs about 1 in 400 people in the US.  When you ask the question as to whether "How we teach Computer Science is Wrong?" - my follow-up is whether you are speaking about teaching 0.25% of the population or 50% of the population?  The deep and abiding fallacy that is the underlying assumption of most "reformist Computer Scientists" is that if we just slightly alter how we teach the 0.25% it will be perfect for the other 49.75% of the population who needs to have some understanding of technology to function in a modern society.  Computer Science reform fails repeatedly because it has the wrong goal and wrong assumptions.  The goal must shift from "recruit more young people so they choose the Computer Science life" to instead "teach all students the basic skills they need for a wide range of full and productive careers".  Like you, I would like to see reform from 8th grad onward - but I think the goal is a better society - not more computer scientists.  Until the narrow-minded "ACM CS1 Reformists" are willing to see that bigger picture - this is just a lot of "tail chasing" and well-funded "hot-air".  It would be fun to *actually* debate this sometime rather than just remote-control blog post comments :).</p>

<p><i>Alan's Comment</i></p>

<p>Hi Charles,</p>

<p>A question that is outside your two poles perhaps should be posed first for science.</p>

<p>To me, the reason to get 90% of the population fluent in science is not to make more scientists, but because it is the best set of processes for thinking outside some of the limitations of our commonsense brains.</p>

<p>This is very analogous to the reasons for trying to get 90% of the population fluent in reading, writing, and the important ideas which can be expressed and discussed.</p>

<p>Similarly for real mathematics.</p>

<p>Now, using these perspectives, where does *real* computer science fit?</p>

<p><i>Chuck's Reply to Alan</i></p>

<p>Alan, you make the perfect point and make it better than I did – thanks. Thinking about Physics, there is always some “outreach” activity at the top-end of the field – for example a cute little video about the quest for the Higgs might excite 8th grade students to be interested in science – but the people watching the screens at CERN are not the people who should create the entire 8-th grade science curriculum. The problem in “Computer Science” is that these two roles are not yet recognized as needing to be separate. The ACM CS0 and CS1 courses are nearly universally accepted as the “one true path” to understanding technology. There are thousands of “beginner” books whose tables of contents are taken directly from CS1. This is a fine set of books for “future computer scientists” who must someday face and understand “Alpha-Beta-Pruning” and the futility of NP-Completeness.</p>

<p>While I find that ACM curriculum efforts take us in the wrong direction in terms of educating the 90% properly, there is work that I like contemplating how we should educate the 90% – The ideas presented in the “Being Fluent with Information Technology” report from the National Research Council – http://www.nap.edu/html/beingfluent/</p>

<p>In summary, I find the argument about which pedagogy best teaches CS1 to 14-year-olds a pointless exercise – instead I would like to discard CS1 and start fresh with a goal of educating the 90% with what they need to learn instead of optimizing CS1 for an increasingly younger audience and coming up with clever marketing around the concept of “recursion”.</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>Chuck&apos;s Europe Teaching and Learning Interoperability Hack Fest</title>
    <link rel="alternate" type="text/html" href="http://www.dr-chuck.com/csev-blog/000702.html" />
    <modified>2010-02-20T14:05:14Z</modified>
    <issued>2010-02-20T09:05:14-05:00</issued>
    <id>tag:www.dr-chuck.com,2010:/csev-blog//3.702</id>
    <created>2010-02-20T14:05:14Z</created>
    <summary type="text/plain">Thanks to a great invitation from JISC to give a workshop at www.dev8d.org, I will be spending the next two weeks doing a coding/hacking tour of Europe. I figured that while I was in Europe already, I would add some...</summary>
    <author>
      <name>csev</name>
      <url>www.dr-chuck.com</url>
      <email>csev@umich.edu</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.dr-chuck.com/csev-blog/">
      <![CDATA[<p>Thanks to a great invitation from JISC to give a workshop at www.dev8d.org, I will be spending the next two weeks doing a coding/hacking tour of Europe.   I figured that while I was in Europe already, I would add some additional stops at my own expense to do a little more coding. I will be staying with friends whenever possible to save money.  The theme is IMS Basic LTI Evangelism and Google App Engine and I am not taking a single tie with me :)</p>

<p>Please contact me via text in a pinch - I may not have WiFi every moment.</p>

<p>Here is my itinerary:</p>

<p>Feb 20:  Flight Detroit to Zurich Via KLM</p>

<p>Feb 22/23: Work with OLAT team at University of Zurich on IMS Basic LTI support for OLAT</p>

<p>Feb 23: Fly from Zurich to London Gatwick @ 21:35 via Easy Jet</p>

<p>Feb 24-27:  JISC DEV8D Days - London - give a Google App Engine Workshop and have some prizes for folks who do IMS Basic LTI or Common Cartridge coding (www.dev8d.org)</p>

<p>March 1 - Visit Oxford University - Talk Sakai, Hierarchy, Mobile, etc</p>

<p>March 2 - Visit Open University in Milton Keynes - Talk about OLNET</p>

<p>March 2/3 Fly from Luton to Barcelona @ 16:30 Via EasyJet</p>

<p>March 3 - Meet at UOC at 10AM, Barcelona, Portal, OpenSocial, Basic LTI, etc</p>

<p>March 4-5 Barcelona - work with Moodle BLTI Team - Talk about virtual tools and Moodle 2.0 </p>

<p>March 7 - Return to Detroit from Barcelona Via KLM</p>

<p>I will miss the Euro-Sakai meeting in Valencia by just a bit :(.  Maybe I will run into Sakai folks coming back through Barcelona from Valencia.<br />
  </p>]]>
      
    </content>
  </entry>
  <entry>
    <title>IMS Basic LTI Consumer for OLAT (www.olat.org)</title>
    <link rel="alternate" type="text/html" href="http://www.dr-chuck.com/csev-blog/000701.html" />
    <modified>2010-02-13T17:44:00Z</modified>
    <issued>2010-02-13T12:44:00-05:00</issued>
    <id>tag:www.dr-chuck.com,2010:/csev-blog//3.701</id>
    <created>2010-02-13T17:44:00Z</created>
    <summary type="text/plain">Next week this time, I will be hacking at the University of Zurich with one of the lead developers of OLAT (Guido Schnider) looking at better supporting IMS standards in the OLAT Learning Management System (www.olat.org). I decided to get...</summary>
    <author>
      <name>csev</name>
      <url>www.dr-chuck.com</url>
      <email>csev@umich.edu</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.dr-chuck.com/csev-blog/">
      <![CDATA[<p>Next week this time, I will be hacking at the University of Zurich with one of the lead developers of OLAT (<a href="http://www.ohloh.net/p/olat/contributors" target="_new">Guido Schnider</a>) looking at better supporting IMS standards in the OLAT Learning Management System (<a href="http://www.olat.org" target="_new">www.olat.org</a>).</p>

<p>I decided to get a head start and code up the IMS Basic LTI Consumer for OLAT somewhat in advance to make sure that our work next week was as productive as possible - I wanted to get the download, compile, and basic stuff out of the way.</p>

<p>I made pretty good progress and kind of have my first pre-alpha release.   Here is a nice working screenshot:<br />
<center><a href="http://dr-chuck.com/images/2010/02/index.php?img=13-02-10_104248.png" target="_new"> <img src="http://dr-chuck.com/images/2010/02/13-02-10_104248.png" alt="13-02-10_104248.png" width="600"></a></center></p>

<p>I have the source to the tool and instructions o how to add the tool to an OLAT distribution in the <a href="https://source.sakaiproject.org/contrib///csev/trunk/olat/lt/" target="_new">Sakai Contrib Repository</a> because I like to put stuff into svn in case I lose it or break it.</p>

<p>There is still work yet to do when I get to Zurich - but now we can focus on more strategic issues rather than just getting the IMS Basic LTI equivalent of "Hello World" working.</p>

<p>In doing this work, I learned a bit about OLAT. <ul><li>OLAT is over 10 years old and started in 1999 at the University of Zurich</li><li>OLAT has a nice learning object repository approach that is already very close to IMS Common Cartridge.  OLAT objects have learning objectives, simple workflow, and other nice common LOR concepts.</li><li>OLAT makes a lot of use of AJAX rather than the traditional Request-Response cycle.   I am still personally a bit nervous about the usability and accessibility of a pure-AJAX approach and am looking forward to talking more with the OLAT team about this next week.</li><li>OLAT (like many other systems) has its own MVC presentation framework.  It is a blend of a Java component model for forms and Velocity templates - you can go back and forth between them.  I am not an expert on the OLAT GUI framework yet - I think its strength is that it supports both "in-Java" and HTML-templating models so each developer can pick how they want to use both in their App.  Abstractions around forms are always complex/powerful and take a bit of getting used to.</li><li>OLAT separates course authoring from course viewing.  Initially that seemed weird to me - but after a while the edit/publish pattern felt pretty good.   I can imagine that the author/publish pattern might allow performance advantages for certain static things.</ul></p>

<p>I learned about using document.write to populate an iframe and how you must split up script tags when writing javascript using document.write.   Cool stuff - you learn something new everyday.  Here is a useful link on the issue:</p>

<p><a href="http://stevesouders.com/hpws2/couple-doc-write.php?t=1266080142" target="_new">http://stevesouders.com/hpws2/couple-doc-write.php?t=1266080142</a></p>

<p>In general I was impressed with OLAT and found it to be a very mature system and a nice extension model.</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>SPV Software Releases Basic LTI Building Block and PowerLink</title>
    <link rel="alternate" type="text/html" href="http://www.dr-chuck.com/csev-blog/000700.html" />
    <modified>2010-02-12T19:07:07Z</modified>
    <issued>2010-02-12T14:07:07-05:00</issued>
    <id>tag:www.dr-chuck.com,2010:/csev-blog//3.700</id>
    <created>2010-02-12T19:07:07Z</created>
    <summary type="text/plain">Stephen Vickers of The University of Edinburgh has released his totally awesome open source IMS Basic LTI Blackboard Building Block and PowerLink: They are downloadable from OSCELOT: http://projects.oscelot.org/gf/project/bb-basiclti/ http://projects.oscelot.org/gf/project/wct-basiclti/ Also, here is Stephen&apos;s demo of the Building Block in Action:...</summary>
    <author>
      <name>csev</name>
      <url>www.dr-chuck.com</url>
      <email>csev@umich.edu</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.dr-chuck.com/csev-blog/">
      <![CDATA[<p>Stephen Vickers of The University of Edinburgh has released his totally awesome open source IMS Basic LTI Blackboard Building Block and PowerLink:</p>

<p>They are downloadable from OSCELOT:</p>

<p><a href="http://projects.oscelot.org/gf/project/bb-basiclti/">http://projects.oscelot.org/gf/project/bb-basiclti/</a></p>

<p><a href="http://projects.oscelot.org/gf/project/wct-basiclti/">http://projects.oscelot.org/gf/project/wct-basiclti/</a></p>

<p>Also, here is Stephen's demo of the Building Block in Action:</p>

<p><a href="http://www.spvsoftwareproducts.com/bb/basiclti/demo.swf">http://www.spvsoftwareproducts.com/bb/basiclti/demo.swf<br />
</a></p>

<p>I want to give my personal thanks to Stephen for working so hard for over a year to make this happen.  He has been helpful in getting other vendors on board with IMS Basic LTI and always has responded to requests and queries almost immediately.  A great example of how awesome Open Source people can be.</p>

<p>Here is a video about IMS Basic LTI if you are interested:</p>

<p><a href="http://www.vimeo.com/8073453">http://www.vimeo.com/8073453</a></p>]]>
      
    </content>
  </entry>
  <entry>
    <title>Python for Informatics - Featured on Creative Commons</title>
    <link rel="alternate" type="text/html" href="http://www.dr-chuck.com/csev-blog/000699.html" />
    <modified>2010-02-06T02:09:58Z</modified>
    <issued>2010-02-05T21:09:58-05:00</issued>
    <id>tag:www.dr-chuck.com,2010:/csev-blog//3.699</id>
    <created>2010-02-06T02:09:58Z</created>
    <summary type="text/plain">My new book (thanks to Allen B. Downey and Jeff Elkner) was featured in the Creative Commons blog: http://creativecommons.org/weblog/entry/20559 &quot;Chuck Severance, clinical professor at the University of Michigan’s School of Information, recently published a new textbook in 11 days because...</summary>
    <author>
      <name>csev</name>
      <url>www.dr-chuck.com</url>
      <email>csev@umich.edu</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.dr-chuck.com/csev-blog/">
      <![CDATA[<p>My new book (thanks to Allen B. Downey and Jeff Elkner) was featured in the Creative Commons blog:</p>

<p><a href="http://creativecommons.org/weblog/entry/20559" target="_new">http://creativecommons.org/weblog/entry/20559</a></p>

<p><i>"Chuck Severance, clinical professor at the University of Michigan’s School of Information, recently published a new textbook in 11 days because he was able to remix an existing textbook. The book, Python for Informatics: Exploring Information, is currently being used in his winter semester Networked Computing course." ...</i></p>]]>
      
    </content>
  </entry>
  <entry>
    <title>Apple iPad Review: Awesome and Perfect - From Sobbing to Cheering!</title>
    <link rel="alternate" type="text/html" href="http://www.dr-chuck.com/csev-blog/000698.html" />
    <modified>2010-02-04T17:44:45Z</modified>
    <issued>2010-02-04T12:44:45-05:00</issued>
    <id>tag:www.dr-chuck.com,2010:/csev-blog//3.698</id>
    <created>2010-02-04T17:44:45Z</created>
    <summary type="text/plain">Like most of the nerd world, I sat in my office listening to streamed pirate audio from the Apple announcement of the iPad last week. Like most of the nerd world, I had high hopes for the iPad - I...</summary>
    <author>
      <name>csev</name>
      <url>www.dr-chuck.com</url>
      <email>csev@umich.edu</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.dr-chuck.com/csev-blog/">
      <![CDATA[<p>Like most of the nerd world, I sat in my office listening to streamed pirate audio from the Apple announcement of the iPad last week.  Like most of the nerd world, I had high hopes for the iPad - I wanted a tablet version of the Mac Air with no hinge!   I wanted to do Java development and record lectures and get rid of my Wacom Cintiq.  I wanted a Mac Air tablet that also ran those iPhone apps as well.  I was willing to pay about $2000 for this "dream AirPad'.</p>

<p>Like most of the nerd world who had similar expectations and dreams by the 2/3 point of Steve Jobs' introduction of the iPad, I was reaching for the kleenex and sobbing uncontrollably.  I was so disappointed.  Why did we wait so long to get a big iPod touch?  Why?  Why?  Sniff sniff...</p>]]>
      <![CDATA[<p>But then Steve said it would run Keynote, Pages, and Numbers - I started to catch my breath and my sobbing slowed to a periodic sob here and there.  And then Steve said it would be $450 and then I was only sniffling and wiping the tears from my eyes.  After all if it was only $450 I would buy it for my kids and maybe buy one for me - just to be very cool and get a second device with longer battery life.  Heck - it was not that much more expensive than a second battery!</p>

<p>As the talk ended, I realized that this was not the "AirPad" - it was something else entirely - and like always, I started to work through the question of "What was Steve thinking when he made this thing?".  It actually only took a few minutes to look at the iPad from the positive direction and see the absolute brilliance of the approach.  So here I go channeling Steve Jobs:</p>

<p>o This is a publisher device - this is the time for publishers (magazines and books) need to switch from paper to HTML 5.  The Sports Illustrated YouTube video is so awesome ( http://www.youtube.com/watch?v=ntyXvLnxyXk )   I want a textbook where when you are having trouble with a passage you swipe your hand across the screen and up comes a video professor to help explain the concepts - like an instant - in place lecture.   Kindle can't do this - IPhone cannot do this - only the iPad can do this.  The New York Times will really become the world's newspaper - it will be so awesome that we will pay for it.  It is like 1994 all over again - folks may actually get pay content to work.  </p>

<p>o This puts Apple in a position where Amazon needs to look over its shoulder.   Amazon will either comply with Steve or become another casualty in the media business where being a solid #1 only led to underestimating the skill of Steve Jobs and Apple to change media.  "Oh - don't worry about Apple - they only represent 0.01% market share" - wrong.  Note to Jeff Bezos: Go ahead and let the Kindle go - don't try to keep Steve out by saying "Exclusively on the Kindle" - it will not work - and when you lose, people will start buying real books through Apple instead of Amazon.  Kindle was great while it was he only thing on the market - enjoy that - and accept becoming a niche player in the reader space.</p>

<p>o This enables lots of micro-payment information sources - once you have an iTunes account you can buy books, pieces of books, papers, etc etc - at whatever scale you want and you keep them forever and search them instantly along with the free stuff you keep in your own personal, local repository.</p>

<p>o This is the perfect tool for students from grade 6 - college sophomores.   It takes about 25 pounds of books and laptop out of the back pack and replaces it with 1.5 pounds.   Believe that Pearson (who mostly owns that market) will figure this out quickly - and reduce the price and increase the quality to *absolutely* drive out all the competition in the grade 6 to college sophomore market.  The materials Pearson will sell for $20 per class will be far better than what we get for $120 per book and Pearson will make *far more money* because they eliminate printing, distribution, logistics, returns, stocking fees. Effectively the local bookstore loses a lot of profit and the used book market is gone and Pearson gets all the money - oh yeah - the books update automatically for $5 per per person per iPad.   </p>

<p>o Why is there not a camera?  Because it would take lots of pictures of your knee - it is where the iPad belongs.  I work so well with a laptop and a book on my lap or next to my laptop.   The iPad is not the laptop - it is the book.   The laptop has a camera - the book does not need one.  Also this is aimed at K12 and I am sure that K12 folks would be a bit more comfortable if the school was not loaded with 1000 cameras wandering around the school.   Remember when they had to create camera-free units of some PDA because many businesses would not allow it.  This is a book not a PDA.</p>

<p>o This next bit just freaks me out because it is so brilliant!   I personally *must have* an iPhone, iPad, and MacAir everywhere I go.  The iPad does not replace either my iPhone or MacAir - it replaces my books.   It is an improvement on my iPhone when it comes to reading and responding to light E-Mail.  So if We assume that some of the moderate use keyboard tasks will move from the iPhone to my new iPad - then I can handle a *smaller* iPhone - which will be my next purchase as soon as Steve gives it to us.  It will be the iPhone Nano!  Doh - so obvious - the right solution for me is is the iPhone Nano (with tethering) and an non-3G iPad and a Mac Air with a 120GB hard drive for development - this is so perfect of a configuration.  You *DO NOT* need 3G on your iPad or on your MacAir if it just pairs with you iPhone nano in your pocket.</p>

<p>o My feeling is that Apple has been pissed at losing the K12 market to Microsoft about 15 years ago.   After all - the Apple II and Oregon Trail was how we used computers in K12 for a very long time - and then Microsoft sneaked in - Apple tried with several attempts to displace Microsoft including the iMac with remote booting, the Newton - all failures because they just missed the fact that the rest of the world was PC based and Macs (back then) were slower, more expensive and K12 simply never appreciated the advantage of Mac Laptops.   So Apple replaced the book with the iPad and with the publishers cooperation, students will initially leave the books home and carry around an iPad - and with $10 worth of Pages and Numbers - soon teachers will simply tell all their iPad toting students to leave their laptops at home because we will write that next paper on our iPad electronic book - oops - sorry Microsoft - you just got pwned in the sixth-grade class room - oh and by the way since the iPad is a music player too - they will *never* pick up that Microsoft computer ever again.   Watch for very aggressive pricing of these to K12 - watch the new species replace the old species at amazing speed.   The fact that the iPod touch is UI is already known to 15 percent of the students means that no further training in the iPad is necessary - the students and teachers will train each other.  Apple has quietly been giving free iPod touches to student who buy a MacBook for the past three summers - Brilliant!   Apple gave these away to train students and prepare them for the iPad!</p>

<p>o This will be the perfect device with which to give lectures.   We will use lovely content and be able to annotate that input effortlessly.  I already do this at great effort using my Mac Air and the Wacom Cintiq - I love it - but it is bulky and expensive.  Here is a sample video - http://www.vimeo.com/8769123 - imagine if someone adds an annotation and screen recording application to the iPad and then *every single K12 teacher* can record and publish annotated lectures with trivial effort.   This will be completely awesome.</p>

<p>o HTML 5 for the win!  Uh Adobe Air - forget it.  Flash - yes you have had a good run - forget it.  If H.264 is available with the HTML 5 video tag - there is no further purpose for Flash.  Sure folks will want to run their old non-video true/false or matching questions - but folks will *quickly* tire of that when they see what you can do with gesture-enabled HTML 5.   And the publishers are the ones who used Flash to make value added slick content will simply switch to HTML 5.  Again - Flash - See YA!  When you see what you can do with HTML 5 (including accessibility) - flash is done - fini!  Thank heaven I never wasted time to learn flash.</p>

<p>o Learning to program.  Those of you who know me know I love Python and think it is the ideal first language (see my book at www.py4inf.com ) - and no it is not on the iPad yet.  But I am starting to think that the next first programming language (or at least the *second* programming language) is HTML5 + Javascript.  Yes - I know it is yucky with semi-colons, etc - but it is the future.  The future is dynamic and visual and HTML5 + Javascript is that future.  I am already working on developing a course for next winter (2011) that is a *programming* course based solely on HTML 5 and Javascript.  I don't like Cocoa and I don't like Objective C (sorry Steve Jobs and Steve Hayman) .  This XCode developer environment will never take off - Everything is better - using a text editor is better - using  a hammer and chisel is better - Visual Studio is better.  Hey Apple is you want to fix this - download the free Visual Basic and write an application - and you will quickly see what a good IDE looks like.   Back to my topic (sorry about that negative rant in the middle of my Apple love-fest).  Objective C and Xcode simply does not matter - the future is Javascript and HTML5 - it is the view and controller of the future MVC - onward and upward. </p>

<p>o IMS Common Cartridge and Basic Tools Interoperability.  Disclosure: I work for IMS as a consultant.  These two standards are perfectly suited to be part of the iPad content revolution - I can't wait to get one and start coding support for these standards.  I will be playing with this at the JISC DEV8D meeting in London February 24-27 http://dev8d.org/ - "Dev8D is 4 days of 100% pure software developer heaven. It will be intense. It will be exhilarating. It will make you a better programmer."</p>

<p>o I am running out of space - think about this as the ultimate personal portfolio tool.  Particularly when paired with Time Machine.  - Cool huh?</p>

<p>So with all this genius, is there a flaw or mistake or shortcoming in the iPad?  In a word "no" - it is perfect - it is perfectly conceived, placed and delivered - the haters who claim 'iPad sucks' simply missed the idea - Steve is way ahead of us all - nothing new there.</p>

<p>So is there a risk to Apple because the iPad is "not enough"?  Yes - a big risk.  Historically, Apple waits until the others play their cards and then play last once they know what the others have done.  They held back on the iPad as long as they could - but had to do something as other slates started to come out.  Microsoft came up with a bumbling offering and Steve pounced.  But who will pounce on Apple?   Of course you know - Google is even more patient than Apple - because Google really does not need to make money (for now) from its *next* offering.</p>

<p>So Google can wait and see and simply out-Apple Apple (you would think Dell could out-Apple Apple - but apparently there are zero creative people working at Dell).   Back to Google - They could put out an dPad (droid-pad) with slick hardware and software and usability ripped off of from Apple - but a more open development platform - a more eager user community and less locked in provider contracts.  And less expensive because Google can afford a bit of a loss-leader in order to not be shut out.   And things like multi-tasking.  And the Google slate can simply say "yes" to flash and make sure Flash is a thorn in Apple's side for 3-5 more years - flash will eventually still die - but if Android goes wide-open for Flash in a tablet - then the world will be confused and conflicted for a while and Apple will take longer to get the the market "tipping point" and we all know the longer it takes to get to and past the tipping point in a market - the more likely it is that we will never reach the tipping point.</p>

<p>So Steve - just a word of advice - have Flash ready to go when Android makes their "we one upped Apple" announcement and be ready to one up them again one day later - I know you hate Flash - but you need to be more afraid of Android than of Adobe.  The usual outcome of starting a land war in Russia is that you lose.</p>

<p>I guess that is enough for now.  I love the iPad I have three on order - one for me, one for my daughter (junior in College) and one for my son (freshman in college).  I am mostly investing in the health of their spine - and for me - I will love it - It will be an extra battery for my Mac Air - as a matter of fact I would have been able to type up this blog post sitting in a chair and looking cool instead of sitting on the floor so as to be near an electrical outlet.</p>

<p>As always - comments welcome.</p>

<p>A few comments came in.  Most liked the post - thanks.</p>

<p>Some comments were concerned about the DRM - here is my response:</p>

<p>I see all this. I am personally all about "free everything" in materials I produce but I stop at the notion that violating copyright is a "god given right". If folks want to protect their content - I don't think that Steve Jobs is evil for giving them a place to distribute their work where they feel comfortable enough. It will be broken and in a few years perhaps even Steve will push the providers to remove DRM - but in the beginning - it needs DRM. If folks are upset - then just choose free stuff all the time - including purchasing a Linux tablet computer.</p>]]>
    </content>
  </entry>
  <entry>
    <title>Abstract: Teaching Informatics to Everyone: The End of Dilbert</title>
    <link rel="alternate" type="text/html" href="http://www.dr-chuck.com/csev-blog/000697.html" />
    <modified>2010-01-29T15:29:58Z</modified>
    <issued>2010-01-29T10:29:58-05:00</issued>
    <id>tag:www.dr-chuck.com,2010:/csev-blog//3.697</id>
    <created>2010-01-29T15:29:58Z</created>
    <summary type="text/plain">People will look at old Dilbert comics in 50 years and will no longer understand why they are funny. The word &quot;nerd&quot; will simply be a &quot;funny arcane word&quot; like the word &quot;flapper&quot;. In this presentation we look past the...</summary>
    <author>
      <name>csev</name>
      <url>www.dr-chuck.com</url>
      <email>csev@umich.edu</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.dr-chuck.com/csev-blog/">
      <![CDATA[<p>People will look at old Dilbert comics in 50 years and will no longer understand why they are funny.  The word "nerd" will simply be a "funny arcane word" like  the word "flapper".  In this presentation we look past the time where technology was the domain of the elite few and instead technology skills become basic skills that all educated people must posses.  We will look at how a completely new set of courses, curricula, books and teaching methods are needed to reach the point where we all possess necessary technology skills.  Examples will be drawn from the new undergraduate Informatics program at the University of Michigan as well as the graduate programs in the School of Information.</p>

<p>The presentation will be a very out-of-the box look at how we need to take technology and move it into the mainstream so we need to revise the old saying to be "reading, writing, and technology".  The examples and topics covered will range from the practical and pragmatic design of real courses, books and curricula to the more fanciful imaginary long-term transformation in education that I feel must and will take place over the next 50 years.  It should be interesting.</p>

<p>I submitted this abstract to the Merlot/Moodle Moot conference in July.</p>]]>
      
    </content>
  </entry>
  <entry>
    <title>Abstract: Building Real Teaching Tools for any LMS Using IMS Basic LTI</title>
    <link rel="alternate" type="text/html" href="http://www.dr-chuck.com/csev-blog/000696.html" />
    <modified>2010-01-29T05:57:21Z</modified>
    <issued>2010-01-29T00:57:21-05:00</issued>
    <id>tag:www.dr-chuck.com,2010:/csev-blog//3.696</id>
    <created>2010-01-29T05:57:21Z</created>
    <summary type="text/plain">his presentation will cover IMS Basic Learning Tools Interoperability and show how a tool or element of content which supports IMS Basic LTI can be quickly and easily integrated into Sakai, Moodle, BlackBoard, WebCT or Desire2Learn. IMS Basic LTI provides...</summary>
    <author>
      <name>csev</name>
      <url>www.dr-chuck.com</url>
      <email>csev@umich.edu</email>
    </author>
    
    <content type="text/html" mode="escaped" xml:lang="en" xml:base="http://www.dr-chuck.com/csev-blog/">
      <![CDATA[<p>his presentation will cover IMS Basic Learning Tools Interoperability and show how a tool or element of content which supports IMS Basic LTI can be quickly and easily integrated into Sakai, Moodle, BlackBoard, WebCT or Desire2Learn.  </p>

<p>IMS Basic LTI provides the unprecedented ability to plug the same tool into Sakai, Moodle, BlackBoard, WebCT or Desire2Learn.  IMS Basic Tools Interoperability tools can be written in any languages and hosted nearly anywhere on the web.  Since an IMS Basic LTI Tool is so easy to write and integrate a new tool into an LMS, it makes a whole new category of learning centers tools to be developed by teachers and local instructional staff. This presentation will provide an overview of IMS Basic Learning Tools Interoperability and how it can be used.</p>]]>
      
    </content>
  </entry>

</feed>