Status
From XOCPWiki
This page will be used to dynamically generate the status page for the course web. Upon completing something, you should add a message to the top of the following section. Use the signature button above the edit window to sign your progress messages.
To update the status page on the project web so that it mirrors this page, execute the following script on attu:
/projects/instr/08sp/cse477/c/update_status.sh
Status Updates
- I've been working hard on implementing the Mediator design pattern in order to reduce the complexity of inter-class communication. The mediating class will be called Arbiter and lives in arbiter.py. I finished coding today and have been debugging and testing. Most everything still works, but there are a few things that I broke that I'll need to talk with Brian about. They ought to be caused by small things that I can't see because I'm working with code I didn't originally write. Other than that, all inter-class communication will be much easier to do in the future, and I was able to trim a lot of unnecessary code and complexity.
--Plunkett 19:22, 19 October 2008 (PDT)
- Added German translations (Changeset 98 and Changeset 99).
--Plunkett 11:47, 15 October 2008 (PDT)
- Added Ticket 15 and Ticket 16.
- Updated our project page on the OLPC wiki.
--Plunkett 15:52, 5 October 2008 (PDT)
- I upgraded the XOs to candidate-765 yesterday, and then Brian and I tried running CPXO with all four XOs. Everything seemed to run smoothly. Most notably, all XOs joining the activity successfully downloaded and displayed the slide deck in around 15 seconds. Also, the x-server crashed on one of the XOs when I tried changing from the activity view to the neighborhood view in sugar. If this happens again, I will look into why it's happening and if it has anything to do with CPXO.
--Plunkett 13:28, 3 October 2008 (PDT)
- I'm planning to spend some time continuing to work on the project as well this quarter.
--Brian 10:23, 24 September 2008 (PDT)
- Mathias and I are back in school and will be continuing work on the CPXO project. We have quite a to-do list (Future Work) to tackle this quarter.
--Plunkett 09:55, 24 September 2008 (PDT)
- Started a User Guide page and also updated the Outstanding Issues page.
--Plunkett 12:06, 5 June 2008 (PDT)
- Posted final presentation and near-final report draft on the web site.
--Brian 00:50, 2 June 2008 (PDT)
- Updated the Activity Sharing and Networking page.
- Please review and update the Outstanding Issues page. Those issues that have been fixed should be moved down to the "Resolved" section.
--Plunkett 15:19, 27 May 2008 (PDT)
- Investigated shared slides problem when using the mesh network. I've narrowed it down to being a problem with the stream tubes. The HTTP client/server software is running fine. I sent an e-mail to the OLPC development mailing list (and CCed to our own list) detailing the situation and asking for help.
- I think that I might be getting different behavior depending on which XO is sharing the activity. I'll investigate that theory next.
--Plunkett 21:12, 25 May 2008 (PDT)
- Implemented all features (with the exception of cleaning slide decks of non-broadcast submissions before sharing) for the beta 1 milestone.
- Ready for our demo.
--Brian 10:07, 20 May 2008 (PDT)
- Two fixes...from the SVN logs (revision 88):
- 1) Student's navigation buttons are properly desensitized when joining a locked presentation.
- 2) Submissions now appear with the correct name in the instructor's submissions tab. This was working before, but for some reason the XOs in a shared activity are failing to figure out what their "channel specific handle" is. So instead of sending the handle to the instructor and then have the instructor figure out who it is, the student XOs send their nicknames directly.
--Plunkett 00:01, 20 May 2008 (PDT)
- Submissions now mostly work from students to the instructor. Student can click submit and instructor gets a new list entry with the submission.
- Submissions get attached to whatever slide the instructor is on, which is incorrect. Need to fix this.
- Submissions don't yet have names attached to them. Don't know how to do this. Need to fix.
- Text field is not yet submitted or stored in the deck. Need to fix.
- Getting closer to our beta 1 target. I'm feeling a lot better about our dry run tomorrow (today?) and our demo on Tuesday.
--Brian 02:21, 16 May 2008 (PDT)
- Added recent presentations to web site
- Added poster to web site in PowerPoint format
- Improved robustness of ink serialization
--Brian 15:55, 15 May 2008 (PDT)
- Completed all of my todos below except for:
4) The Shared object will retain a reference to the Deck object, but the Deck object will no longer have a reference to the Shared object. The Shared object will continue to make direct calls on the Deck object, and to implement 2) in the todo, the Deck object now has local flags for navigation locking and instructor/student with setter methods that the Shared object can call to change those.
- My new todo:
1) Move the navigation lock button to the Navigation Toolbar and delete the Shared Toolbar (along with the Locked/Unlocked text label). Then Give the button two images for lock/unlock (a closed lock image for the former and an open lock image for the latter). 2) When a student joins a CP activity, the lock button should not be highlighted, indicating it is not a button that can be used. 3) When a student is in navigation locked mode, the navigation buttons should also not be highlighted, as they cannot be used.
--Plunkett 22:41, 14 May 2008 (PDT)
- Did a merge with Brian's ink code at our last meeting on the 7th. The trunk now has Navigation Locking and Basic Ink, though there's a bug with nav locking and slide sharing that causes a one minute delay on start-up and sometimes causes either the student or instructor to crash.
- My todo:
1) Merge sharednavigation.py with shared.py. 2) The Deck object needs to keep track of the nav lock and instructor bools locally and connect to the appropriate signals to update them. 3) Combine the navigation-locked and navigation-unlocked signals into one signal that sends out a bool. 4) Shared should send out a signal (like network-slide-change) to change slides instead of calling the Deck object directly. 5) Each class should have its own local logger with its class name as the logger's title. 6) The second argument in the calls to Deck::doNewIndex() should be "is_local=bool" rather than just "bool" to be clear what the bool represents. 7) Fix the hang/crash caused by slide sharing and state info being pushed to the students happening at the same time. The student XO should download the slides and then receive initial state information sequentially.
--Plunkett 15:14, 12 May 2008 (PDT)
- Ink painting is now more optimized and is actually very smooth and responsive on an actual XO. Trackpad drawing isn't ideal, but it's not terrible either.
- Instructor ink sharing (real-time) now works over the network on a basic level.
--Brian 06:35, 7 May 2008 (PDT)
- Added progress screen while slides are downloading (though it takes a while to show up, and can't actually show a progress bar due to limitations in GlibURLDownloader)
- Switched the sidebar over to a tab view (gtk.Notebook) so that the panels don't have to be completely redrawn each time the tab is switched, and so the interface is more appropriate/consistent)
- Temporarily removed a few things from the sidebar.py code (submissions). These will be added back as I get farther on working on submissions.
- Fixed a bug in sharedslides.py where it wouldn't actually retry a failed download (missing parentheses on a function call)
- Added some more code to track rendering performance
- First cut at basic ink support is now functional. Click and drag to draw on a slide; for now, the ink disappears when you change slides. Performance on an actual XO actually is fairly reasonable, even before optimization.
--Brian 23:59, 6 May 2008 (PDT)
- Created a VMware image of candidate-703. Confirmed that it works with activity sharing with Classroom Presenter between the VM and a real XO on the same network. Will share at next meeting.
--Brian 12:59, 5 May 2008 (PDT)
- Kris and I got slide deck transfers working; the performance of the transfers is actually pretty good and apparently works to multiple XOs at the same time.
- We demoed the application as part of our presentation.
--Brian 16:26, 30 April 2008 (PDT)
- Currently running into a lot of problems with stream tubes, which is the best known way to exchange data between XOs in a shared activity. I've so far been using code from the Read activity, which is referenced all over the OLPC wiki as the de facto example for using stream tubes. After getting the slide sharing code in place in the shared-unstable branch, I ran some trials using build stable-656 on mine and Matt's XOs. In short, the sharer would successfully bind an HTTP server to a random ephemeral port, wrapper that port in a stream tube, and then inject that tube into the shared activity. The joiner would be able to find the tube and accept it, but the port that this tube says to use is completely different than the port that the sharer had used. The log messages on the joiner indicated that the subsequent download attempt failed due to having gotten a reset packet, which is the expected behavior for communicating on a port that the end node is not listening on. Forcing both sides to use the same hard-coded port also resulted in failure, though this time the log messages gave a general IOerror exception deep within the HTTP downloader code.
Connection reset error message: <type 'exceptions.IOError'>: [Errno socket error] (104, 'Connection reset by peer')
- Since this code was for the most part taken from the Read activity, I tried running that activity and got the same results.
- After doing some research, there was a lot of talk on the OLPC wiki about stream tubes having some problems on the latest stable build (656), which is what mine and Matt's XOs were running. So my next step was to upgrade all the XOs (mine, Matt's, and Will's...the latter recently acquired and was running build Update.1-691) to candidate-703, which should include a number of stream tube related fixes mentioned on the OLPC wiki. By the way, after the upgrade, Matt's XO exhibited some strange behavior. If I tried going into the root console (by pressing ctrl+alt+esc), the keyboard would stop functioning properly from that point forward. Most of the keys wouldn't work at all, and the rest had strange effects ('l' cleared the screen, for example).
- I then synced all XOs with the shared-unstable branch and started a presentation on my own XO. After sharing Classroom Presenter, it would only show up in the neighborhood view of Will's XO (not Matt's). I joined the activity on Will's XO, and the slides did not get sent. (Update: The shared activity won't show up on Matt's XO because it isn't set up properly. Running './setup dev' and restarting X-Windows does not do the trick for this XO. This thing is b0rK3d.)
- I suggest that we consider slide/ink sharing the highest risk right now.
--Plunkett 14:27, 29 April 2008 (PDT)
- My progress this week has been limited due to Engineering Open House and related preparations.
- Did some tests with using the camera to digitize slides. The resolution is insufficient for a page of 12-point text, but is quite adequate for large, block-lettered, handwritten slides.
--Brian 13:23, 29 April 2008 (PDT)
- Updated the website; presentations are now available in PowerPoint and Classroom Presenter for the XO format. (These are also useful as test decks for the Classroom Presenter activity.)
--Brian 18:31, 22 April 2008 (PDT)
- Deleted the old sharing-unstable branch.
- Created a new branch named shared-unstable.
- Implemented shared slide navigation (see Activity Sharing and Networking for details).
- Merged this working code back into the trunk. Trunk now has shared slide navigation functionality.
- Next tasks: implement slide deck sharing between instructor XO and student XOs; add "lock" button to the Shared toolbar to let the instructor choose when the students are following the presentation.
--Plunkett 21:15, 21 April 2008 (PDT)
- Updated page on XO wiki here.
- Put another request in for our project to be shown on Actvities page.
--Will 2pm 4/19/08
- Sidebar implements new SlideRenderer (thanks Brian)
- Slide in sidebar is highlighted in unison with main viewer (thanks Brian)
- Text area below main slide viewer for "submitting" answers (currently writes to text file in /home/olpc/show/subs)
- Sidebar can switch between thumbs nails of slides and submitted answers
--Will 2pm 4/18/08
- Activity now has an icon
- Can now save and resume from journal
- Can load decks from a flash drive from journal
- Decks are now zipped
- JPEG is now implemented
- Something about the sidebar is killing performance on slide changes. I haven't been able to figure out what it is yet.
- Will post test deck in new format soon.
--Brian 22:45, 17 April 2008 (PDT)
- Integrating saving/loading presentations with the Sugar datastore is not going to be easy. The datastore is not intuitive and the documentation is scattered.
- Added support for JPEG slides/slide layers.
--Brian 22:15, 16 April 2008 (PDT)
Status updates from our weekly meeting:
- Slide rendering is making progress; we're close to multilayer support.
- Sidebar is working with hardcoded paths/slide numbers, but needs optimization.
- Basic activity sharing is now functional, but doesn't do anything after it's connected.
- Need to set up a meeting time with Mark for the next week to discuss our application and talk about lesson plans.
- Met with Carl and Gaetano.
--Brian 16:39, 16 April 2008 (PDT)
- Made progress on abstracting slide rendering into its own class and implementing multiple layers.
- Began draft of initial Report Outline.
--Brian 23:44, 15 April 2008 (PDT)
- Implemented navigation by number entries ( on slide 1 of 10; go to slide 3 of 10).
- Side slide viewer somewhat works.
--Will 6pm, 4/13/08
- Branched Revision 6 of the trunk code base into branches/sharing-unstable. The goal is to get activity and file sharing to work on this branch before integrating back into the trunk. (See Subversion for details on branching.)
- Added code to see who has joined the shared activity, but need to figure out how to have virtual XOs in VMware discover each other before I can test activity sharing (or get my hands on a second XO).
--Plunkett 23:56, 11 April 2008 (PDT)
- Confirmed that fonts do indeed work properly on the XO in Classroom Presenter; it's my conversion process that's somewhat broken.
--Brian 18:54, 9 April 2008 (PDT)
Status updates from our weekly meeting:
- Discussed survey questions for interested teachers; created Catalyst survey
- Discussed planning a time for our classroom test in West Seattle
- Do arrangements need to be made with the school as well as the teacher?
- Decided to use some icons from Paint activity
- Discussed progress on goals for the week and set goals for the next week; see Timeline
- Discussed file format and potential network communications models
- Networking and synchronization is going to be the most challenging piece of this puzzle.
--Brian 14:22, 9 April 2008 (PDT)
- Experimented with InkScape, created a couple of simple buttons using XO templates and scripts.
- Working on setting up development environment... I will have questions for you guys in the morning.
- Composed questionnaire for teachers, found at /projects/instr/08sp/cse477/c/survey.txt -- How should we deliver? By e-mail, or using some kind of survey (Catalyst??)
- Composed a draft of an e-mail to send to our West Seattle friend. Will send after tomorrow's meeting.
--Klous 21:13, 8 April 2008 (PDT)
- Added some content on the course web; this status page should now appear as well.
--Brian 16:52, 8 April 2008 (PDT)
- Created a skeleton class site for our project.
- Added a section to the wiki that will discuss activity-sharing/networking related topics.
- Added links to the developer wiki and our OLPC project wiki.
--Plunkett 19:56, 7 April 2008 (PDT)
- Added wiki pages documenting the slide deck file format and the status of graphic support
--Brian 03:59, 7 April 2008 (UTC)
- Figured out VMWare emulation environment (only ship 666 image. tried multiple 691 images with qemu conversion to virtual disks, but none would properly load).
- Updated public wiki with information regarding brian's code submissions
- Played with the "sugar.graphics" API's and other .xo Activity source code, no features added (hopefully tomorrow).
--Will 6pm, 4/5/08
- We have a working application that is capable of displaying SVG and PNG slides, as well as a basic file format.
- Discussed timeline for the next week and assigned tasks.
- Set up wiki for collaboration and subversion repository for source code.
--Brian 00:58, 3 April 2008 (UTC)
