Presentation on theme: "June 10-15, 2012 Growing Community; Growing Possibilities Richard Webber Richard Haukom Lydia Li Stanford University."— Presentation transcript:
June 10-15, 2012 Growing Community; Growing Possibilities Richard Webber Richard Haukom Lydia Li Stanford University
Feedback for Faculty and Students ◦ I only need to do a few things in CourseWork (Sakai) ◦ I want to see all my appointments in one place ◦ I don’t want to have to navigate through the Sakai Uis to get to the features I want to use Schools are asking for more features ◦ Not enough resources within CourseWork team ◦ Many schools have IT resources but no Sakai expertise ◦ IT resources do have expertise in pervasive web technologies, such as Google Apps Stanford on the cusp of rolling out Google Apps for Education ◦ Graduate School of Business paved the way 2012 Jasig Sakai Conference2
Faculty and students already using or experimenting with other services ◦ Facebook, Twitter ◦ Piazza, ClassOwl ◦ Google Apps ◦ Blackboard, CCNET, Custom Built Often supporting research ◦ New teaching methods ◦ New technologies A single LMS will not serve all these needs 2012 Jasig Sakai Conference3
Core tools and services that are teaching/learning specific ◦ Gradebook, Roster, Testing General services that are already pervasive on the web ◦ Social Networking, Calendaring, , Document Sharing How to integrate with these pervasive services Bring course management functionality to where the users are Enable sophisticated users to develop in familiar environments 2012 Jasig Sakai Conference4
Talking to the Graduate School of Business Saw convergence of their needs our SULAIR’s ideas Led to development of proof of concept ◦ Google Calendar replacing Sakai Schedule Tool First step in a larger initiative around SOA ◦ Initial focus on Google Apps 2012 Jasig Sakai Conference5
Richard Haukom 2012 Jasig Sakai Conference6
Semi-autonomous professional school ◦ LMS Implications per SUL/AIR ◦ Opt-out model ~80 course sites/quarter All courses represented in CW/Sakai Course sites managed by Faculty Assistants Up to 10 Course sites per Faculty Assistant 2012 Jasig Sakai Conference7
Students #1 Complaint: ◦ Too many information sources/locations ◦ Strong preference for single point of contact ◦ CW/Sakai accepted as the appropriate vehicle Minimal use of Schedule Tool ◦ Labor intensive, redundant manual process ◦ Insufficient time pre-term for FAs 2012 Jasig Sakai Conference8
GSB drives adoption of Stanford Google Calendar becomes GSB standard iCal rapid prototypes explored Spring ‘11 Proof Of Concept – gDocs/iCal/CW Benefits envisioned POC Limitations & concerns with POC 2012 Jasig Sakai Conference9
SUL/AIR – GSB POC Joint Venture ◦ Vision alignment ◦ Resource sharing ◦ Short timeline with useful results ◦ Summer ’12 plans – GSB Future directions ◦ Supporting disaggregation ◦ Feature rich, quickly and widely accessible, and secure course materials containers. ◦ Increasing reliance on online forms of communication in relation to classes. (Online Final Exams through CW/Sakai use growing rapidly.) 2012 Jasig Sakai Conference10
Lydia Li 2012 Jasig Sakai Conference11
Initial State in gCal, before Adding 'Lecture 4'
Initial State in Sakai, before Adding 'Lecture 4'
Adding an Event 'Lecture 4' in Sakai
'Lecture 4' added in Sakai
'Lecture 4' added in gCal
Edit 'Lecture 3' details
'Lecture 3' title changed in Sakai
'Lecture 3' title changed in gCal
Adding an Event 'Lecture 5' from gCal
'Lecture 5' added in gCal
'Lecture 5' added in Sakai
Deleting 'Lecture 2' in Sakai
Delete 'Lecture 2' in Sakai
'Lecture 2' deleted in Sakai
'Lecture 2' deleted in gCal
Create, Read, Update and Delete (CRUD) gCal events Same UI as existing Schedule Tool Real-time editing from both Sakai and gCa Data in one place, no syncing No need to Export or Subscribe Day, Week, Month, Year and list Views Same as Schedule tool. Share gCals with Site members View all their course calendar and personal events in one place
Re-use existing Schedule Tool's code as much as possible Due to time and resource constraint. Created a new Sakai Tool by refactoring calendar code. Made possible by velocity, which enforces a Model-View-Controller (MVC) approach to web development. Minimum code changes to Velocity(.vm) files. Completely removed DB layer. gCal is the persistence layer. New services to call Google Data APIs via OAuth. Modified CalendarAction.
gCals created for each section Unique calendar name for each section (i.e. section id) Owned by users in the domain Accessing Google Calendars through OAuth 2-legged OAuth for domain-wide delegation of authority, available for Google Apps for Business and Education: users do not need to give consent on an individual basis. An application that has the OAuth consumer key and secret is allowed to act as any user in the domain when accessing Google Data APIs.
2-legged Oauth Include the xoauth_requestor_id query parameter in the request URL. Send the signed OAuth request using the HMAC-SHA1 signature method oauthParameters.setOAuthConsumerKey(CONSUMER_KEY); oauthParameters.setOAuthConsumerSecret(CONSUMER_SECRET)... service.setOAuthCredentials(oauthParameters, new OAuthHmacSha1Signer()); URL calUrl = new URL("https://www.google.com/calendar/feeds/ "); // url for calendarFeed or entryFeed.... myCalQuery.addCustomParameter(new CustomParameter("xoauth_requestor_id", userName));... CalendarFeed calendarFeed = service.query(myCalQuery, CalendarFeed.class); // get Calendars CalendarEventFeed resultFeed = service.query(myQuery, CalendarEventFeed.class); // get Events service.insert(myFeedURL, myEntry); // to Add an Event service.update(feedUrl, toUpdate); // update an Event retrievedEntry = service.getEntry(feedUrl, CalendarEventEntry.class); // get an Event retrievedEntry.delete(); // delete an event
Recurring Events Need new UI and rules for supporting gCal recurring events Automatic update of gCal ACL Automatic sync with course enrollment Integration with other Sakai tools such as Tests and Quizzes.
Rich Text Editor available only in Sakai Need to enter raw html tags in gCal if rich text description is desired. View mode in gCal renders rich text correctly in a web browser, but not on mobile devices. Does not support attachments Use links instead