eXtreme Assignment 2 Journal


Assignment 2 [ Add a New Entry ]

Thursday, May 09, 2002


5/09/2002 02:34:00 PM

These are the final stats

lines of code (including comments):
2235

Objects involved (based on 1 peer node):

1 ClipsterUIWin32
2 ClipStorage
1 ClipBox
1 ClipCache
1 Clipster
1 ClipsterUI
2 FileSystemStorage
1 ClipRequestHandler
1 HttpServer.py
1 UserOptions
indefinite number of RssParse
indefinite number of RssTransducer
indefinite number of HttpClient


Defects:
0




Tuesday, April 30, 2002


4/30/2002 11:12:00 PM



- Metaphor was clear/unlcear.
- UI doesn't work well with testing
- The project was much more undefined.
- Evolutionary Design
- Much different from Project 1
- Clipster was a "true-er" XP experience
- There was more "specialists" in project 2.
- The pairing sessions were more sparse and not partner overlap.
- We develop new ways to commicate design changes
- More comfortable with partners after second project

- MATT : more formal w/ joining our group. the formality helped with quality control.

How closely followed:
- Followed XP: 85 - 90% (less testable code)
- No test for UI - unpractable.
- Refactored : clipsterUI, clipStorage : Not that much refactoring.
- We did things more correctly the first time around.
- We adopted the layer sematnics at the first.
- Storage, UI, Network

XP Practices : Final Thoughts
- Chris: XP : everything
- Sarah XP : everything but not all the time
- Matt XP : Didn't like it. Seems less efficient
- Slim XP: adopted test-first and refactoring (simplistic), can't really do pair or other
XP in his work environment. Your current work enviroment for XP. Likes Spikes.
- Andy XP: tailoring..













4/30/2002 12:50:00 AM

Alright, after Sarah & Andy, Sarah & Slim, and Andy & Slim we now have a clipster that copies stuff into the filesystem and can paste stuff from a remote clipboard. I don't know if we'll really be able to get any UI stuff done. Given the state that we're in we really should focus on getting our scope covered. If we can get the multipart MIME encoding decoding done on Tuesday we should call it a wrap then and there.

Everyone, for tomorrow's meeting please come with your thoughts on the following points*
  1. how closely have we followed the XP principles for this project

  2. reflection on the 2nd project. What went right, and what went wrong.


* Those points will help you guys write your papers, anyway. So please come prepared. :)

What we'll tackle tomorrow at 9PM will be as follows:
  1. prepare presentation

    • draw up the overview of our architecture using our extreme flowchart

    • point out features list for the application

    • XP philosophies followed (show snippets of tasks, and stories)

    • write up points discussed in the above points to be handed out

  2. create installer using py2exe

  3. go over the script for the demo



Alright, I'll talk to you guys tomorr....er... tonight. :)




Sunday, April 28, 2002


4/28/2002 02:47:00 PM

Sarahs' post ----

Last night's session was not a happy session :( We didn't see the problem with Reconstitute that was mentioned in the commments (it didn't freeze up), but beyond fixing a minor problem in the testSerialize we couldn't figure out how to massage it into the proper form. So, we went on to explore how to add stuff to the system tray icon, which led us through a maze of twisty examples, all different :p None of them, however, were especially helpful. I know someone who has built GUIs with python in the past (altho not with the dynwin stuff) but I will see if any of that looks interesting.

----



Saturday, April 27, 2002


4/27/2002 04:35:00 PM

soooo...Matt, where were you? If you can make it anytime this weekend, let me know.



Thursday, April 25, 2002


4/25/2002 12:30:00 AM

Reconstitute still doesn't work.
However, Matt and Sarah, give reconstitute a look.. however, don't spend too much time on it.
If you can't figure it out, just move on to the System Tray Task.
Chris said he will try it again on thursday when he is fresh.

For the System Tray Task:
We created a SetupSystrayIcon that has an rendered image icon and tooltip.
The image for the icon needs to be loaded instead of being rendered (which it is right now).

Ehh.. I think thats about we have to say - there isn't much to say.
Please complain (via email/blogger) if you want more details.

chris + andy




Tuesday, April 23, 2002


4/23/2002 11:25:00 PM

Before I go on to describe our achievements, I'd like to update you guys on more dynwin randomness
I have witnessed tonight. Even if winmin.py crashes, try running ClipsterUIWin32.py to see if that runs without a problem. If so, proceed to use that machine. I know it's weird...

Tonight we have glued the clipboard backup/restore mechanism into ClipterUIWin32.py so that CTRL-ALT-C does the right thing. We were trying to tackle the multipart MIME issue with regards to being able to save the entire clipboard content into our ClipBox. That's where we have left the code at. The idea is basically that clipboard contains more than one type of data that can be pasted, and it's up to the application to decide which of those to use. Of course we could just be saving either one of text or a binary glob, but then we'd have to choose just ONE of the many available formats that are resident in the system clipboard after a CTRL-C operation. We thought maybe having a multipart MIME encoded content would make up to that shortcoming by transferring the entire clipboard content to the peer.

Look inside testClipBoardSerializer for what we were trying to set out to achieve. We haven't finished it yet. Feel free to pick up where we left off. Feel free to skip the whole multipart mime stuff and proceed with just being able to handle CF_TEXT if you wanto, though.

Also, if you look in the links section of our blog you'll find a link to an example of task bar sys tray programming which we should be able to port to Python using dynwin pretty easily.


Sarah will be posting an updated version of the flowchart that shows where the serializing functions come in.





4/23/2002 12:14:00 AM

Good meeting guys, I guess we had glossed over our target audience discussion in the beginning. I thought it was obvious that we're not trying to reinvent an IM client, but I was stupid to have assumed that. Ya know the ol' saying about it making an ass out of u and me. Sorry about that. It's my fault.

Alright, here are our tasks for the next sessions to follow

  1. Take the glue code that ties in all the stuff we've written inside the testClipsterUIWin32.py file and hook them into ClipsterUIWin32.py (1)

  2. Create a SysTray for the app (1.5)

  3. Create a context-sensitive menu for the sytray that allows listing/choosing peer as well as exiting (1)

  4. Add features to the menu for adding/removing peers (1)

  5. Add the "options" menu item to the menu and the item should popup a dialog box allowing users to check their option sets (1)

  6. Popup Progress indicator dialog box while a big file is being transfered. (1)

  7. Cascading menu for each peer to allow for selection of clips to be pasted. (2)




Sunday, April 21, 2002


4/21/2002 01:54:00 AM

as far as i know, andy and i will be working tomorrow night at 9pm in wean.