And it is a *LOT* of fun. Branches are a way to store code you are fiddling with on the server instead of scattered around your home directory. It is also a great way to version control your hacking. Up to now I kept making tar files each time something worked and I had made progress.
I made branches for all my outstanding fiddling
o Frameless portal – functional – 70% complete – needs cleanup
o iFrame Portlet – functional – 50% complete – needs careful moving of features from web content tool
o Mail archive tool performance improvement – 10% complete – I have refactored code to make paging calls. But it does not really do paging. The real work is to move paging from MailArchiveAction into the service and this will require SQL hacking.
Here is how you make an SVN branch:
svn copy https://source.sakaiproject.org/svn/mailarchive/trunk/ https://source.sakaiproject.org/svn/mailarchive/branches/SAK-11544/ -m “Branch for Mail Archive Performance Improvement”
svn copy https://source.sakaiproject.org/svn/web/trunk/ https://source.sakaiproject.org/svn/web/branches/SAK-12563/ -m “Create branch for iframe portlet”
svn copy https://source.sakaiproject.org/svn/portal/branches/SAK-12350/ https://source.sakaiproject.org/svn/portal/branches/SAK-12402/ -m “Create branch for frameset portal”
This is so easy and fun – I cannot believe I did not know how to do this until today. I learned from this web page:
http://svnbook.red-bean.com/en/1.1/ch04s02.html
I love coding over holiday break! Coffee, pajamas, and a cable modem!
Programming the Frame Set Portal
I am working on what I call the frameset portal
http://bugs.sakaiproject.org/jira/browse/SAK-12402
This allows a JSR-168 portlet in Sakai to request to be shown with no left navigation. This has applications for externally hosted tools and content – like the iframe tool and the IMS Tool Interoperability tool.
The way most LMS’s do this is by using a frame set. The LMS puts a little tiny nav bar in a frame at the top so the user can get back to the LMS and puts the content in a second frame that gets the rest of the screen. This uses a frameset instead of iFrames – so the usability is not too bad – of course the accessibility is not so good. But for content that lives in a URL – this is the only choice other than a popup. This is better then a popup in many people’s opinion (and mine as well).
I think that this will allow publisher content to look really nice in Sakai.
Broken Trunk Over the Holidays
Here are the commands to unbreak the trunk if you are working over the holidays.
cd announcements
svn update -r39609
— All better – no ned to backlevel Announcement
Broken build URL
http://grandcentral.cs.wisc.edu/pavlo/index.php?page=results%2Foverview&opt_user=csev
Pedagogy / Tip: Using Google Calendar in Sakai
This shows how to use a Google Calendar in Sakai instead of the built-in calendar. The primary benefit is that you can get your course calendar on your PDA and desktop – and the students can subscribe to the calendar as well. Code is being worked on in Sakai to produce an ICS feed – but until your site has that Sakai code in production, this is a workaround.
SI539/SI543 Notes – Mostly Gibberish
Cleaning up my desktop in preparation for next semester.
SI539/SI543 Notes – Mostly Gibberish
Cleaning up my desktop in preparation for next semester.
Abstract: Teaching Experiences with Sakai and Other Technologies
This presentation will describe how Sakai has been used to teach two beginning programming courses at University of Michigan. This will describe the featuers of Sakai which were used and places where Sakai was not sufficient and other solutions were needed.
Abstract: Sakai Overview
This presentation gives a brief overview of the Sakai project. The topics covered range from the history of the project all the way up to a simple overview of the Sakai architecture. The presentation describes Sakai’s placement in the market, Sakai community governance, Sakai’s commercial affiliates, Sakai adoption, and a number of other topics.
iPhone cannot sync contacts
This is a great entry – made me very happy.
Does anyone know how to resolve this error? I keep getting an error message stating that iTunes could not sync contacts to the iPhone because an error occurred while pushing data from the phone.
Give this a try: Go to Applications>iSync>Preferences>Reset Sync History
http://discussions.apple.com/thread.jspa?messageID=6018864&tstart=0
Mission: CHUM Open House Potluck
I am making two dishes for the potluck C.H.U.M. Open House tonight (www.chumtherapy.net). I am making my Aldi’s glazed ham and my sweet potato casserole. I also made a video for the occasion. I call it the CHUM Christmas Album.
It is a surprise and will be premiered at tonight’s open house. After which DVD’s will be sold to raise funds.
Aldi's Ham Buy spiral sliced ham at Aldis for $14.00 Cook covered in 250 over for 1.5 hours Pour off liquid Mix glaze packet with water - make it consistency of Mud Add brown sugar if you put in too much water Throw glaze in microwave for 30-45 seconds Spoon glaze on the ham spoon it around and hit it with a propane torch to make it bubble and stick to the ham as it dribbles down the side. Throw chunks of pineapple in around the ham at the bottom of the pan - fresh if possible - canned is OK Put back in the oven for an hour or so uncovered 250 To serve put in a Corning dish - cut into edible chunks remove bone - arrange chunks and pineapple in the Corning dish and take to the potluck Chuck's Sweet Potato Casserole Five sweet potatoes peeled and cubed into chunks about 1.5 in x 1.0 in - more than a single bite Boil potato chunks until just cooked in water on stovetop Drain and spread out in 9x12 glass baking dish Cut up 1/4 pound butter into chunks and throw in Mix 1/4 cup Orange Juice, 4 tablespoons of cornstarch, 4 tablespoons of brown sugar - make a kind of mud pour into the pan - the potatoes will give off more liquid. Put in oven at 250 for an hour. Bring mini marchmellows to the venue - just prior to serving put the mini marshmellows on top of the potatoes and pop into the microwave for a short while.
This is still in progress – I may have to update if things
need adjustment.