Skip to main content

Fall 2007

Go Search
Fall 2007
Customer Resource Site
  
Fall 2007 > J08 10-19-07  

J08 10-19-07

Modify settings and columns
Journal for Oct 19th, 2007
  
View: 

1. Name

 Hubert Lee
 (8%) 
 
 Dave Eng
 (8%) 
 
 Jeeyun Lim
 (8%) 
 
 Matt Freeburg
 (8%) 
 
 Derek Sessions
 (8%) 
 
 Sohum Misra
 (8%) 
 
 Brad Dodson
 (8%) 
 
 Aaron Cottle
 (8%) 
 
 Corey Shaw
 (8%) 
 
 Yuan Gao
 (8%) 
 
 Kevin Le
 (8%) 
 
 Felipe Serrano
 (8%) 
 
 Rae Alty
 (8%) 
 

Total: 13

2. Milestone Status: Gains made (If possible, include hyperlinks to what you mention here.)

 
  • Milestone can be found here
  • Completed the interface for tags on the backend
  • Created tables in the database to store tag data
 (8%) 
 
 The milestone that I worked on for Tuesday can be seen here.

My milestone report can be found here

To summarize, though,
  1. I was able to properly draft a method (at least numerically, which should give some insight functionally) of calculating trust and ratings, etc. according to the user case provided by Luke. The notes have been uploaded here. Not so well named...but...eh okay I'll change it after I'm finished with this journal. -changed.
  2. I wrote up the stub code for the relationship model, sent a copy to Rae and Matt, and checked it into the project.
  3. I would have loved to have gotten some integration done between the relationship model and the backend, but so far we're still missing the interface in the backend. Once I know how that's being done, or at least have the names of the functions/methods that will be used, this part will be able to begin to move.
 (8%) 
 
 
My milestones are here. I was able to implement a markup viewer that can display the XHTML markups correctly and by next week it will hopefully be integrated into the WYSIWYG editor. The documentation of markups that will be supported by our editor can be found here.


In terms of the team as a whole, we were able to integrate a lot more and were able to show our customer a fluid demo of what we have so far. Each team has come up with specifications and user guides, which makes it easier for someone from a different team to understand a team's module, how things operate, etc.
 (8%) 
 
 
Milestone report is here.

In addition:
- helped Brad with a response to the customer's letter
- organized customer meeting and assigned deliverables to various people
- ran customer meeting: it went pretty well and I thought we did a better job of keeping everything on track this time
 (8%) 
 
 
My milestone report is here.

My new milestone assignments are featured here under "Search/Navigation"/"Derek Sessions".

Currently I am in the process of transitioning from the Silverlight project to the Search team, so I'm learning the general architecture and beginning to work with the back-end on creating a ranking system (ordering) system for search results that will be powerful, extensible, and fast. Right now I will be creating usage scenarios and an exact description of what features I need, and later this week work with the back-end on beginning to implement these features, and probably begin work on the global page ranking algorithm. What about the Silverlight project? How is is going imparting your knowledge to the others that will be taking over in your place?
 (8%) 
 
 
  • My milestone report can be found at this nifty location.
  • I was able to make a lot of progress at the beginning of the week working as the sole UI person. In particular, I was able to implement the skin on most of the basic pages on the site.
  • In particular, I implemented ASP.NET's master layout feature. This is basically a template that will easily allow us to change the page structure without going into every page. Good. That's what we did in 415, and it got rid of a lot of duplicated code and made editing much easier. --Kristin
  • I implemented cookie-based authentication. This is probably not a long-term solution since we may move in to the database to store session data, however it sufficed to show the customer how things will work.
 (8%) 
 
 
On the actual coding front, the gains this week were modest. Most of this relates to problems in the development process I believe, so I'll get to that later. Concretely, my understanding of the progress for the week is:
  • We have a working standard for markup, which implementation is progressing on, in relation to authoring and viewing.
  • The backend has been updated to a final form, fixing my mistakes (;-)).
  • Backend implementation of entities and login is working.
  • Content supports multiple data streams.
  • Search has drafted a abstract search tree definition, and we've decided who will be responsible for handling it (Relationships team).
  • We've connected and decided on an interface to handle relationships, and divided work in handling these things between the teams.
  • In addition to this interface definition, we've defined exactly what the backend will be required to provide.
  • The user interface has done a tremendous amount of work creating a theme and lots of interface stuff.
  • The silverlight player has progressed a lot
  • The markup editor is apparently making a lot of progress
  • Image upload and video upload and conversion have been investigated pretty highly.

I'm sure I'm leaving stuff out but this list represents to me an inventory of how people are working, and the ways that i hope we're ramping up.


What about your milestones? In fact...what is your milestone for this week? I realize that as PM it seems important stick with broad goals like "communicate well" and "get milestones out on time". However, I believe you've reached a point at which you need to come up with specific milestones for yourself and post them. This will benefit the whole class--I'd recommend (hint, hint) getting Barnaby's take on how to do this. --Chelsea
I agree with Chelsea here, and I felt like I should say something because this point really needs to be understood. Everyone else writes journals on their own milestones, so there you shouldn't need to rehash that here. Again, talk to Barnaby--he's got plenty of PM experience and is a great resource. --Kristin
 (8%) 
 
 
My milestone report is here. Unfortunately, the actual tasks that needed to happen on the backend changed after the milestones were posted, and the milestones never changed. (This is potentially a very dangerous situation because it means that you are not working on the tasks that everyone else thinks you are working on, or worse, is counting on you working on.  Always update those milestones! -- SW) The biggest task I accomplished was rewriting the backend interface, which is much more stable and simpler for both the frontend and the backend. This also involved changing how data is stored to allow multiple versions (or a picture and a video, etc) of the same piece of content. These large tasks were part of other milestones (the rewriting of the backend could be considered "deciding on a transaction interface"), but there wasn't one clear milestone for exactly what I had to do. This week I believe the same thing is happening, so I'll make sure the milestones are changed to accurately reflect what the real tasks are. This will be great for the class and much appreciated by the staff. Start the trend! --Chelsea

I think that a major gain occurred this afternoon. At 3, Brad, Matt, Derek, Rae, Jee Yun, Dave, Hubert, Corey, Kevin, and I met to discuss what exactly the new relationship team was doing and how it affected and interacted with the backend and search teams. We spent a lot of the time that everyone was there talking about the relationship model and tags, and how they are represented in the database. This was helpful to a certain degree, as it ironed out a few ambiguities, but by and large most of this was already known. The gain came, unfortunately, after several people left, when we talked about what the new team does. We decided that the relationship team serves as a layer of indirection sitting on top of the backend which processes the abstract search trees into a SPARQL-like query. This query is the only thing the backend processes. It is a great relief to have this ironed out; until now, it was the backend's job to parse/use both the abstract search trees and the SPARQL query. I knew that it didn't make sense for us to be implementing both, and indeed I had serious doubts about whether or not we could actually do both with the manpower we had. Now we have not only a concrete objective that we can work towards--something that's been lacking in this area for many weeks--but the objective is actually something we can feasibly accomplish.
Great and helpful detail.
 (8%) 
 
 
For my milestone, I completed a number of varied things that pertain to content viewing that needed to get done. For instance, handling of comments, finishing setting up properties on user controls, and setting up the CodeBehind for the video player to create dynamic javascript that was able to "pass in" the tags.

Also, I worked on several documents, including the Markup specification, in addition to a general content view specification and the more specific video player specification. These documents will serve useful in the future as they will help the customer (and future coders) to understand our design.
 (8%) 
 
 
  • My milestone report can be found here
  • I added search function to EmbedContent plugin and user can search with keyword/tag and insert the search result.
  • I copied the text editor file to WebApp folder.
  • I removed unnecessary attributes for hyperlink and some buttons in WYSIWYG editor. I removed date/time button, directionality button and image button.
  • I wrote the specification for Authoring. I was happy when I opened the documents from authoring, because they were done well and exceeded my expectation. Excellent work - Matt
  • I modified the markup specification. Added some tags such as <blockquote>, <pre>, <div>. <ul
 (8%) 
 
 Milestone
  • Created a registration page with backend functionality
  • The upload page now automatically generates a thumbnail for image uploads and uploads it with the content to the backend.
 (8%) 
 
 
Please see my weekly milestones here.

In addition to these milestones I completed:
  • A User Guide draft for the Authoring/View team
  • Some bug fixing for the customer demo.
  • Knowledge transfer from Corey to my team and Sohum
  • Beginning to transfer my updated branch upload code to the main branch
 (8%) 
 
 
-Wrote up a Search Usage Guide, which tells how other modules will use the search module. It curently contains the explaination of the "selection tree" that is only in my branch, as I want toat least get as much functionaity as the old version before merging it in (haven't finished parsing yet). Along the same lines, wrote up a Search Specification Document of the parts of search (though very little is on the Relationship model, as at the time I wrote it, it was a little more hazy than now). In general, most of the parts of the projects wrote up speca and usage guides.

-Remodeled the selection tree, the new model is described in the spec, to allow for searching for different types of data (people, content, tags), which Aaron was the chief idea-man for. I have since redesigned his idea a bit, to allow for searching using relationships (for example, searching for people I trust at least X much, or content made by such people) I need to iron it out just a bit more, and I'll talk to the backend and/or the relationship team about it. Documentations (or rather, modified documentation) to come, but want to "finish" the idea a bit more first.

-We (Derek) added a way to do sorting. This is a highly temporary, but usuful intermediary solution. It's a step in the right direction. We 9derek and I) discussed the options with Aaron, and it's being developed further. For now, we use an array of KeyValuePairs, as described (briefly) within the previously mentioned usage guide.

-We (half the class or so) met to discuss relationships, tags, quries on relationships, and all that jazz. We ironed out a single definition for tags (rather than the several we had floating around) and set in "stone" relationships. (btw, defintion of tags: "a text description about a backend object", not all the fancy stuff we discussed)I had to leave early, but when I left we were talking about querying and who does the parsing of trees, etc. I'm told that the Relationship team will do this. Also on the agenda was the valutaion system, but I left before this happened.
Once again, great detail here. However, as Chelsea mentioned below, spellcheck is nice :-P
 (8%) 
 

Total: 13

3. Milestone Status: Obstacles Encountered

 
I'm working on implementing the tag interfaces I defined in my milestone now. I'm not that familiar with the way the visitor has been implemented on the backend, so I haven't gotten much done yet. Also, I'm not sure how all the relationship stuff we're doing now will fit in with tagging.
 (8%) 
 
 
  1. Integration has still not begun yet, since we're waiting on the backend to give us a proper interface. This is the big thing. I'm glad to see this is at the top of your list. --Chelsea
    Stop waiting and start getting! Passiveness will only hurt you here.  Go tell the back-end group what you need in this interface and help them design it.  If they are taking too long, make up the interface yourself and start using it, telling them that you are doing so.  Drive the process, don't just follow behind.
  2. The relationship model will need to be moved out of SearchNavigation into its own project. This will require coordinating with Rae, since there may be some code in the Search model that refers to the Relationship model, and it might not be a seamless move as desired.
  3. It's still ambiguous as to whether or not Corey and Kevin have an idea as to how familiar they are with the inner workings of the relationship model right now. I know Corey's been sick, so chances are he hasn't gotten the chance to really take a good look. But I was hoping that we'd get this sorted out today(Friday) at 3, since we planned to meet as a (sub)team then.
 (8%) 
 
 
Image tagging was pushed back because we have not come up with a final definition of what a tag is. Different people had different ideas of what it should be (for example, one thought it was a link to a different content or a part of a different content, while another thought that it contained information about the content itself, etc). And what does the customer think a tag should be?
that's an excellent question, and I wish we'd pulled a better answer out of him. If he dislikes what we're doing, we can at least point to the feature specification document I believe; although in general we may just have to pursuade him to like it. -brad

I also did not finish implementing our embed custom tag, but that was mostly because I was sick all weekend and ran out of time. But I also feel that a lot of what my team (content view) was doing this past week was closely linked to what the authoring team was doing. But that's where the team restructuring comes in.
 (8%) 
 
 
The obstacles I encountered in my milestones are really development related. The one that is more milestone related is something that Dr. Wong mentioned today which I realized has been a lot of the problem with the RDF/SPARQL investigation.

The problem being, how do you sift through all the complications and details of an existing solution to find the one little piece you need? I think Brad is actually very good at this, but the problem is we need to free the time for him to think about those kinds of things, and we need to successfully transfer the information to other people once it's found, rather than have Brad try to code it up.

Other obstacles are noted in the development section.
 (8%) 
 
 
It's unsurprisingly difficult to transition into the main project from my vacuum of the Silverlight video player. Although I had a rough idea of the general architecture, there is certainly a bunch that I don't know enough about in detail and specifics.
 (8%) 
 
 
  1. It took me a while to figure out how to use localization easily (within ASPX pages, rather than the codebehind file). In fact, I still haven't figured this out.
  2. I wasn't able to skin a couple of the features because they were still being developed (for example authoring documents).
  3. This is an obstacle that I will encounter... Silverlight. Taking over the view team will involve me and my team (aka Jeeyun) picking up some Silverlight knowledge quickly from Derek.
 (8%) 
 
 
The difficulties for the week in getting milestones out the door were:
  1. video and image conversion will require some sort of outside calls, which is a deployment issue we need to address
  2. the relationship system has been fallow for most of the week since everyone was pointing fingers and no one knew which part they were supposed to do
  3. we've still not got the process exactly right for dealing with deliverables and how the timeline of lock-downs, milestones, etc. should be established
  4. personally i worked a too much this week on this class - i'm guessing about 30 hours, and in many ways didn't find time to accomplish everything that I would or could, so I need to figure out how to restructure things to spend my time where it is most valuable. I miss sleep. I think we should have 410 parties where we all try to catch up on work from other classes. I have 410-ers in all of mine. - Matt You're right, this is too much time. If you didn't finish everything you wanted to finish in that amount of time, the problem lies with your goals (which either aren't posted or need to be linked to) and with a lack of effective delegation. Fight the urge to take the burden upon yourself and work for hours on end. Make sure you are delegating tasks that the PM shouldn't necessarily be doing.
 (8%) 
 
 
Although RDF/SPARQL is reasonable for us to accomplish, there's still a lot of work to be done in implementing the SPARQL query. We've more or less decided that all of the free/open source SPARQL engines we can find are too complex or rigid or poorly written to be useful to us, so we're going to take the concepts of them and write our own. Also, since we're adding onto RDF by storing the "strength" of connections, there isn't any code we can adapt for this purpose. I haven't done the research on this subject that you all have, so I ultimately defer to your opinion. However, I must say that I get a little twitch when I hear you speak of what sounds suspiciously like reinventing the wheel. It's ultimately your call, but proceed with caution.

We also haven't yet decided on an interface for ordering results.
 (8%) 
 
 
Though I did get a lot of work done this past weekend, it was difficult at times because I was at home, so it was harder to communicate with my team and other members of the class. I felt like I sort of lost communication around Sunday/Monday.

Also, I've come down with some sort of sickness that has rendered me unable to do much work the past few days. I hope that it doesn't last through the weekend, or I'm going to be hard pressed to get *any* work done this weekend. Hope you feel better, but make sure that you let everyone know about this sooner rather than later. --Kristin
 (8%) 
 
 
- Coding in Javascript is hard since it's not easy to test and debug. Now I am removing unnecessary attributes for table, but there are lots of mysterious problems: sometimes give wrong background color; "Apply" button in color pickup panel is not working.
- Not sure how to display embeded content. Now I insert <div>/<embed> tags but it should be a placeholder to show the embeded content.
 (8%) 
 
 
  • The way the upload page was designed while I used it was not very extensible and made it extremely messy to add thumbnail functionality.
  • I could not find the controls used for serving images. While the designer files were present in the authoring project, the aspx page was missing.
 (8%) 
 
 
I'm starting to get a little sick....yuck, but so far it hasn't really hindered productivity. I'm just scared for the coming week.

I had a test and a project due this past week and two tests and another project due early this coming week, so I'm swamped beyond belief. I'm not sure that I'll complete my milestones this week, so I'm preparing for a couple of hellish catch-up weeks.

Slow down and get some rest. You've identified this problem ahead of time, which is great. You are also delegating tasks to Yuan well, which is the next thing I would suggest. If you think it would benefit to put an extra person at your/Yuan's disposal temporarily, let Brad and I know. We might be able to shake someone loose somewhere. - Matt Matt: I think things are rough with all the restructuring lately, so floating team members around may not be the best choice at the moment. Consider alternative solutions, such as Felipe's below (although I commend you for thinking ahead alongside him). --Chelsea

As far as coding obstacles, I'm actually doing quite well. I'm very satisfied with my new and clean upload visitor and with the image/video conversion in the backend. I still need to decide on the exact standard and whether I want to store the original content in the backend as well, but those are minor issues.
 (8%) 
 
 
-Trying to figure out how exactly to add the idea of relationships to queries. Do we still use search trees, do we use SPARQL, etc.

-Different definitions of "tag" were floating around, and different people thought it meant different things. It was something of confusion when Corey took up that part, having not touched it before, and having a different idea of what it should be. Corey, Dave, Kevinand I discussed it a bit, which was the first time Corey and Kevin had heard/understood the tag system that was in place. They didn't feel it was intuitive, and had only a loose grasp of it at that time.
 (8%) 
 

Total: 13

4. Milestone Status: Proposed Solutions

 
I can take a look at how the other classes have used the visitor (notably the content class) and I ought to ask Aaron about it if I find that I'm spending too much time trying to decipher the code. I definitely need to discuss relationships with Aaron (lol).
 (8%) 
 
 We have a meeting at 3 today (Friday) as a (whole) team and I will hopefully have a lot of things cleared up then.
  1. I will talk to Matt during this meeting and hopefully coerce him into giving us what the interface will be (and hopefully soon) so that we can continue working. Coercion is probably not necessary, but I do take bribes. Bottled root beers are always good, but only frosty. On the coding front, I think if we can get the Query method sorted out by Sunday, then we will be able to address this interface together during the coding party. The best way for me is really if I can sit down with you and go through it. - Matt
  2. I don't know if Rae will be able to attend the meeting, but if she can, I'm going to talk to her about this as well. If not, it's e-mail time.
  3. Likewise with Corey and Kevin.

Good that all of you are communicating more! --Kristin

 (8%) 
 
 
We actually had a meeting today to come up with a clear definition of what a tag is and narrowed down our relationship model and how we are going to store and query the information from the database. More of this type of meeting is much needed in the future. Even though we have said that the people working on the front end don't need to know about what's going on the backend, today's meeting completely opened my eyes and gave me a clear (albeit a birds-eye-view; but that's all I need) understanding of how everything fits together.
I am really glad you came, and that it helped you in this way. Do you think it would help to do this with the whole team, covering the whole architecture, and really the entire end-user experience? - Matt

I'm glad to see that you have clear, concrete solutions (or attempts at them) for the problems you've listed. --Chelsea
 (8%) 
 
 
I spent an hour after class today talking to Dr. Wong, and amongst various topics he gave me an idea about how to handle this specific problem. I don't want to reveal anything here yet, but you'll hear about it next week after I try it out, whether it succeeded or failed. Hopefully you'll be telling the team about your solution, although the journal is a good place to do this...

In the more general terms of how to sift through detritus and find the pieces you need, I think that's more of a skill that we will all hopefully improve through the experience of this course.

I'm not really sure what to say here...while I'm confident you probably have a solution in mind, it's difficult to grade you based on "my secret solution" and "hope for improvement". Given the detail in the rest of your journal, I'll give you the benefit of the doubt, but in future weeks, please give your solutions here for the sake of the rest of the team (and the staff). Milestone solutions in particular should almost always be available for everyone. --Chelsea
 (8%) 
 
 
I just need to study up and start implementing stuff. From personal experience, I learn the most about a system by doing simple tasks in it, and move up from there. So it should work itself out by the end of this week. Definitely looking forward to some (non-script) coding.

This might be enough to get you going; it might not. If it's not, turn to your human resources. --Chelsea
 (8%) 
 
 
  1. My current solution is to load it from the the code behind file. I will have to investigate further to see how I can make a call to resource objects from within an ASPX file. Reading the section on it on asp.net multiple times did not ease the confusion, unfortunately.
  2. I think these features are up now. I'm counting on a coding party this weekend to make quick progress. (What if this doesn't pan out? Such questions are a pain to consider now, but doing so will save you time in the end--even if you only have to resort to plan B once or twice. --Chelsea) I will also have to be more proactive in asking other teams to generate stuff, especially given that I have been given the responsibility of leading the UI team.
  3. That's how the cookie will crumble. I think working with and understanding the video player will allow me to get a handle on Silverlight. Using Derek as a resource will obviously also be the correct path to take. Excellent call.
 (8%) 
 
 
  1. We'll just have to talk to luke and dr. wong about this; I hope it won't take too much time away from other pursuits for the now smaller content view and authoring team
  2. we had an extremely productive meeting this afternoon that I believe converged all of our viewpoints. I believe the backend knows exactly what's expected of it now, and we'll have a concrete interface that the relationship team can start coding against very soon. Likewise I'm impressed and happy that Dave is actually contributing his knowledge and experience to the process, and I think he'll guide our work in the right direction.
  3. Matt's working on that mostly, although I think we may need to think about it a bit and then just make a decision and formalize it (and enforce it).
  4. Delegation works, but you have to be smart about it. I think matt's journal has a good point, and I should probably spend my time just trying to distill the standards information for people. I wish I'd done 3 weeks ago what I did this week (reading lots about RDF and SPARQL, digging through an implementation, and then telling other people what that means about how to design the system). Speaking of delegation, is there a reason that someone else couldn't have done exactly this? Certainly big decisions need to involve you, but I don't think you need to be the one doing all the research. I am fully confident that you could have given this task to any person in the class and they could have given you comparable results to communicate to the rest of the team. The difference would come from the milestone assignment--ie, "research SPARQL and RDF" versus "find out how to do x, y, and z, and make recommendations for me to give other teams on such-and-such". I really believe you've learned enough about what goes into concrete milestone assignment that you can safely do this, thus freeing yourself up to spend your time communicating the results rather than finding them.

 

 (8%) 
 
 
Even if we don't use any of the code from other SPARQL engines, we can and will look at them for suggestions and places to avoid problems they ran into.

It sounds like we may be making that an added layer on top of either the backend or the relationship team, but not an integral part of the SQL query. I do believe this is the first time that a feature has actually moved to another team from the backend, so I'm trying very hard to resist the temptation to ignore the problems associated with it and just let other people worry about them. Don't worry about hero coding, though; I'll be more than happy to let other people do the implementation if it's determined it's not part of the backend.
 (8%) 
 
 
The most obvious solution to falling out of touch with the rest of my team is to be proactive about getting status updates and figuring out where everyone stands. I clearly didn't do enough of that, but at least I know how to do better next time. Luckily, I shouldn't be going home until Thanksgiving weekend.
 (8%) 
 
 
  • Use IE7 and Visual Studio to debug. With these tools it's easier to locate the errors. I'll also let the program output some variables and check whether they are right. Derek has done a lot of work with javascript for the video player, so he may also be able to help. I've found Firebug (a Firefox add-on) to be an awesome tool for web development for just these problems. Check it out.
  • Do research on this problem. I will create a branch and try to use javascript/AJAX to replace the <embed> tags with content, and use the similar technique to show preview content in WYSIWYG editor. "Do research" and "try to" are both too vague. Set yourself a goal and promise to obtain it. Tell Felipe you want to add it to your milestone (this helps with communication and adds accountability).
 (8%) 
 
 
  • Felipe used the visitor pattern to make a more extensible approach to uploading data. This is something I need to learn how to apply. A quick talk with Felipe about this will probably help you immensely.
  • It turned out the file was moved over to the webapp portion of the project. This is indicative of a larger problem we have recognized, in that we have started migrating files to the actual web app while still maintaining files in our segments of the project. We need to determine when files are to be migrated to the webapp, and how they will be kept up to date with the latest developments in the separate projects.
 (8%) 
 
 
I don't think there's really a solution to the workload, except ask Yuan for help. But I've already pre-empted that and assigned her the critical milestones for this week, leaving the less critical ones to me (i.e. the ones that cannot be integrated into the main project until the backend/search/relationship conglomeration make decisions).
I was going to suggest this in the previous section, but you've already done it. Kudos. Same here. Actually had to go back and delete my comment :-P
 (8%) 
 
 
-Aaron and I have talked about how to do it in a tree, and it's been a tough problem to solve. I *think* I have a working idea, see gains for (slightly) more specifics. As for the SPARLQL and stuff, this was dscussed and I think resolved during the relationship meeting (also see gains)

-Those involved met to discuss tags/relationships, and iron out proper definitions and things of that nature. Though there was some lose of time due to wswithing of teas, I think we all have a better idea for it, as it forced us all to reconsider and gave new perspective on the issue...someon who had't seen it before and could thus see the it was not exactly intuitive for someone just coming into it. Further (but smaller) discussion will probably be necessary, as the kinks are ironed out.
 (8%) 
 

Total: 13

5. Development Process: What seems to be working and why?

 
Our customer is happier this week, since we've been able to satisfy his requests. His requests can be found here and here. Our deliverables can be found here
 (8%) 
 
 
Our meeting with Luke seemed to go a lot better than last time. Well...last time seemed okay as well, until he hit us with the (now, highly linked) letter. Even so, I feel we're on a better standing than when we were last week. The letter really served as a real wakeup to us, I think, and our customer relations at the very least are a lot better (at least as appears to me). I do admit that I feel a little lax with this class (though to be fair I'm trying to manage my other classes as well, so I can't devote as much attention as I'd like (Like all of the broken record TAs have said, this will continue to happen for the rest of the semester for everyone)), and maybe we're all guilty of this. But Luke is right in that it's the wrong attitude to have for such a unique class as this.
 (8%) 
 
 
We are meeting more and communicating more; although people have been submitting code until Thursday, there was a lot more integration and debugging that took place after our milestone deadline on Tuesday night. Our meeting was much more organized and more people engaged in the discussions that took place.

On a side note, what does it mean when code is checked in after Tuesday on the very first week of the much-acclaimed code freeze? A lot of people looked to that code freeze as a solution to last week's problems, and the freeze didn't happen. I personally have a problem with empty, unenforced policies--it's just a bad idea to make rules that are disregarded. Since your journal is the first one that mentions this issue (lucky you!), I'm going to suggest that you look at it as a problem and bring it up to the class to solve.
 (8%) 
 
 
I think this is hard to say this week, and not because things aren't working - they are working much better at this point - but because the forces are subtle. Also, the things that go wrong definitely stand out more.

I think the best thing is to list some of the good things that are going on.

We had a very good meeting this afternoon with all the teams who are intimately involved in the relationship model / value network. Lots of people spoke up and we got some things finally nailed down that we should have done a long time ago (meaning, what is a tag (did this really get nailed down? Jeeyun didn't seem to think so... --Kristin), how the relation model looks, and where the separation between search, relation/tags, and backend teams is).

I send out a list of deliverables assignments, and everyone delivered for the meeting. The time was short, and I was happy to get a good response.

Brad and I continue to work much better together. This is getting better each week, and it is paying off. Particularly we planned and implemented a couple things in today's class meeting (moving the chairs and doing a team-building exercise) that helped bring the group closer together.

All in all I think communication and cooperation is improving. It's not perfect yet, but much better. I think the team changes are helping, particularly with UI efforts and with the Relationship efforts, which now have their own dedicated teams to focus on this large tasks.
 (8%) 
 
 
I think the team restructuring, although in some ways awkwardly timed, should help us move forward at a faster rate. Specifically, groups that used to be under a crushing load of 'abstract' work now has that split up, and groups that were overstocked for their tasks are leaned up a bit. Also, having a dedicated website/UI team should be very helpful in tying together the front end. This is essentially the driving motivation behind the change. I would also add that I hope to enable people to finish their tasks, and move on to other areas. I think we have a lot of talent, and it's a loss to have those talents chained to one part of the project. The challenge is in making those shifting of gears times in an efficient manner, rather than a disruptive one. I think we're still learning how to do that - Matt
It's great to see that the teams were split up for good reasons, and it's great to see that most class members seem to know what those reasons were. Huzzah for communication.
On top of that, the latest customer meeting seemed to go very well. I think having a customer demo branch regularly should help greatly.
 (8%) 
 
 
  • I am happier with the team restructuring than others because it is allowing me to work on a part of the project that I am really interested in. This is great experience for me. I also think once the teams figure out their exact goals, we will be more productive since the teams are more defined (i.e. one team is'nt handling two unrelated things). I would like to put more people on the parts that really interest them. This isn't easy, when there are plenty of uninteresting things around that need to be done. Be on the lookout for these opportunities, and let us all know when you see them - Matt
  • Matt and Brad (and possibly others in the background) have stepped up to the challenge of communicating with the customer effectively. I feel we are doing a better job and proof of this is that 24 hours have past our customer meeting and we have not received a not happy email.
  • We have scheduled a coding party (I think) for tomorrow. The coding parties were where I got most of my work last week because it was dedicated 410 time.
 (8%) 
 
 
The team restructuring is overall going to be good, although it's probably still flawed, and still probably to static. I really don't think that, at this point in the semester, teams can be "too static." Something can be said for knowing what team you will be on and having general goals for the rest of the semester, instead of thinking, "oh, I'll just be on a different team next week anyway." I think more people are getting involved in mainline development, which is key to what we have to finish the project. I think it's already paying off. Actually my biggest concern at the moment is how can we give more people a chance to lead a team and not offend any leaders that need to step aside in order to make room for these chances. That's a very future issue from this point though.
The truth is, despite my gantt charts and everything else, I think we're about 10% through implementation of the project. Unfortunately, Gantt charts do not a project make. Just because the charts say it should be done does not mean it will. What we have is impressive, but there are a ton of holes. The question that we'll answer this week is whether we can define everything so that no more time is wasted this semester.
Today's meeting about the relationship model settled a lot of things for a lot of people (things that, ironically, I believe had already been settled between me and individuals, but not collectively standardized yet). I have thought through a tremendous number of use cases for the system, and I believe a tremendous variety of things will be able to be built on the system we're creating.
 (8%) 
 
 
After we accomplished so much at today's after-class meeting, I realized that one of the problems we've been having is a lack of an extended time when everyone can meet that allows us to focus on issues and design rather than the daily/weekly mundane tasks that occupy class time. One hour isn't really sufficient to design or solve anything; in fact, if we're constrained to one hour, just as the creative juices start flowing we have to leave. This is why coding parties and meetings outside of class are so important for 410.
There is no reason for the group to ever spend class time on "daily/weekly mundane tasks". EVER. If something needs to go, make it happen. An hour goes a long way if you can figure out how to cut away the ramp-up time. A crucial factor is actually having the whole class period, hence the importance of punctuality.
 (8%) 
 
 
I think we did a better job of satisfying the customer this week. Perhaps that's because we paid more attention to his demands?

Also, I think the "code freeze", of having no new features after Tuesday would work, but not everyone followed it. Or, not everyone finished early enough so that things could be integrated. See my comment about this in Jeeyun's journal.
 (8%) 
 
 
  • Our customer meeting is better this time.
  • I'm glad with the flexible team structure. Although our Authoring team has only two people now, I feel the communication is improved. Is this a result of flexibility, or have you happened to have landed on a great team?
  • Felipe's idea of daily report improves the communication.
 (8%) 
 
 
  • The teams are being restructured in a way that seems to better distribute our limited resources across projects. The transition seems to be going fairly smoothly thus far with teams passing on their knowledge before handing it off to a different team.
Anything further, more related to how people are actually performing (rather than merely circumstantial happenings)? --Chelsea
 (8%) 
 
 
In my opinion, this week was a huge improvement over the past week. And the interesting thing is that I think the customer's letter was just a minor part of that communication restructuring.

I think as a team, we finally realized the importance of this and how to begin to work together a little better. Maybe I'm speaking for only me and my team, but there seemed to be a lot more cooperation and understanding this week.

I think Brad's team-building exercises are a great idea, and maybe we can even implement them during coding parties when people need a break. This is a great idea. You should organize break time (including making sure it doesn't last too long)
 (8%) 
 
 
-I like my new team structure, size, and workload. It seems to fit well, having two people in the group, as currently we are working on two parts, selection and sorting. Also, its convient that Derek is the one I'm working with, as I see him a lot outside of this course. That allows me to not schedule meetings, but meet whenever I see him. I can talk to him more often about things, and work together with him in a bit easier way than if it weer someone else in the class.
 (8%) 
 

Total: 13

6. Development Process:  What does not seem to be working and why?

 
  • Brad feels that some of us are still somewhat apathetic to this project.
  • Integration between groups and getting everything ready for the customer meetings is still an issue for us, as well as getting to the customer meeting on time.
  • Sohum is currently stuck finding and working out bugs when he prepares the presentation for customer meetings.
I think agree that these are indeed important issues to focus on. --Chelsea
 (8%) 
 
 
The team changeover right now? Well at least, Corey's sick and Kevin is um...I don't know what he's been doing. I've not really done much while we wait to get an interface, and that's bad. Matt said that he would take a little longer to get it to us (at earliest by Thursday and still nothing yet), so it's understandable. Even so, this does need to be addressed so we can get working properly. I think now may not have been a good time for changeover, but it was the right time, if that makes sense. You are in position to really aid this transition by bringing Corey and Kevin up to speed.

Matt's annoyed that people are unresponsive to when they request for feedback on different things. Feedback is important, I know. Sorry on my end, that I haven't been active on that. On the other hand, with the response to the letter, I was actually confused because I kind of glanced over the response since as an attachment it was called "re not happy letter". I kind of thought it was just a copy of the original letter so I dismissed it. Solution? Okay so I need to read more carefully - but at the same time can we all make an effort to have better names for documents? Okay okay I know...I just uploaded something called "random notes" I'll fix it I swear. This is fair criticism. We need to come up with a clear way to communicate about these action items, and I have an idea I should talk to Jee Yun about.

Corey and Kevin? We need to start being a team, and start now. We have to get some work done on the relationship model and very soon. If we can get it working by Tuesday - pure amazingness.

Sharepoint (again). We're going to run into problems if we keep changing teams and having different folders for different documents. For example, if the Search team, Relationship team, and Backend team all need the same documents, this could be a problem. That and creating new teams that need similar documents. Copying should not be an option. Just like duplicated code, copies just lead to the chance that there will be multiple, all slightly different, documents available on Sharepoint, so good thinking.
 (8%) 
 
 
This has not been a problem yet, but concerns have been raised that Derek is our only sliverlight person in the team. (Yes, this could be a serious problem--see what happened last year when our MIDI guy/model team leader got sick! -- Kristin) When there's something that needs to be done in the video player, we rely on Derek to get it done. This is dangerous because when Derek becomes unavailable due to sickness or being busy with other classes, etc our progress will be hindered.

Any other (perhaps broader) issues?
 (8%) 
 
 
There are several issues.

The fact that the majority of the team does not want to speak up and contribute continues to hurt us, in ways that aren't always obvious. For one, it gives the customer the impression that we don't care. For another, and this is the really insidious thing, it contributes to hero-coding tendencies. I don't mean this just in coding, but in general work, whether it is paperwork, making decisions about what the team should do, constructing non-code deliverables, doing research and design work, and actual coding. I quite agree.

When few people are making these big decisions, they get in the habit of making the decision. The next time something comes up, they are more likely to simply decide on their own and go ahead and implement their decision, whether that is coding, making a design, etc.. Yes!

We also had a big problem with lateness to the customer meeting last night. Only Sohum and I were there when the customer arrived. Not only was it a bad reflection on the team, but it was a bad reflection on me personally, and I was very disappointed in the team (aside from Corey, who was excused from the meeting, and Jee Yun who has class directly beforehand). Keep after this one for sure.

The problem that has been affecting the milestones is one that really boils down to a communication failure on multiple fronts. Particularly with the relationship model milestones over the past couple weeks, we had problems with the intent of the milestones not getting through to team leaders, with team leaders confused about what other teams were supposed to do first, and a general lack of a communication channel between Brad and the leaders for tracking the status and clarification of these tasks. I think you've hit the nail on the head each of these problems--both in terms of what they are and in explaining why they're worth solving.
 
Great job on this section.
 (8%) 
 
 
To some degree we have to get everyone involved in things like the customer response letter (of which I am guilty of being a bit lazy about looking into; I had missed that the meeting was held in Dr. Wong's office instead of Symonds and also couldn't find it as an attachment from Owlnet and forgot to ask people about both.) I'm not sure having games and stuff on Friday will help, however. It seems more that Friday is a day we really need to get stuff done, and all class times are one of the small periods of time where we are all together and can get stuff done and get plenty of inter-team communication finished. Interesting that you think this, since opinion seems to be split on the matter. These are good points, and I think there were failures on both ends. Really the issue was not specifically the letter, that was just the latest manifestation. And it shows us we really have to work to change communication for the better, both in bottom-up and top-down fashions. As for "Fun-Fridays," I think it really does make a difference. We had a very productive meeting this afternoon - was some of the reason for that tied to the energy that we ended class with? I have to admit I was unsure about the idea of a wiki-race, but I truly did find myself having fun without even trying. I said this during the warm-up project, but I think there is something to be said for the silly little ice-breakers and team-builders we've been introduced to over the years of school and other activities. They do have value, and it is certainly very subtle. I do believe, though, in conducting them in an honest and friendly way. All that said, I think there is a balance between work and team building. I think 15-20min on Friday is a reasonable amount of time for this. I think there may be other things we can do, as well, but more on that when we get to that point. Don't knock it till you've tried it, but don't be afraid to voice your opinion here if you have evidence to back up your skepticism.
 (8%) 
 
 
  1. More people need to be there at the coding party, I feel. At least one member from each team should be there. I understand last weekend was tough given that it was a long weekend and many people had gone out of town. Hopefully this will not be an issue in future weekends. Again, what if it is? I've found that college students tend to pretty possessive with their weekend schedules...
  2. Like Matt, I also gather a sense of apathy towards the project from the class. You can't force someone to like something but at the same time, this project cannot be treated the same as a project for any other Comp class as one will be quite unproductive then. For example, in 314 the first and last projects were fun and exciting and most of the class produced great final products in that. In contrast, the Gzip project was dense, complicated and boring, and seemed like a waste of time for a lot of people.
  3. Being on time to meetings is still a problem. We need to address this problem urgently.
 (8%) 
 
 
  1. Despite a new focus today, we still do have some degree of lack of committment from a number of members
  2. I continue to realize how much work we have left, and how many things I need to add to my already massive Gantt Chart. Just don't get bogged down trying to adhere to a really specific long-term plan. Pick the important goals and stand firm on those deadlines.
  3. This week was the week of excuses about relationships: Backend that search hadn't defined what it needed, Search that backend didn't provide support, lots of people that the RDF and SPARQL implementation was confusing and not clearly relevant. At least we now know how to avoid this in the future - see Milestone proposed solutions, last item
  4. We also dealt with the customer letter this week, which did take a lot of effort to sort through.
 (8%) 
 
 
Motivation is lacking in a lot of people, I think. I'll admit to being guilty of that; I have a lot of projects and responsibilities this semester, and 410 is taking up a disproportionate amount of my time as it is.
410 is the monkey on my back that is constantly choking me. 440 is the 300-pound gorilla that walks up about once a week and pounds me with a giant mallet. 320 is the annoying brick wall that all of a sudden blocks my path when I turn a corner, and I have to backtrack and waste time. Stat is like a pack of mosquitoes. So, I sympathize about the time issue completely. - Matt
 (8%) 
 
 
I'm a little frustrated and upset that I've had to completely switch gears, along with my team members (not to mention at a time when I'm sick). I'm starting to understand what my new team's job is, but it's taken a while. I feel like we've lost valuable time, and will lose more.
I think this was necessary, but we definitely could execute it better the next time. Your point about keeping teams intact is one I have thought about, and it makes sense. The only thing it doesn't do is allow new people to lead, but that isn't always appropriate. This change has definitely been the hardest on you, and that's unfair. - Matt
Partially in response to Matt and partially as a question to you: should leadership be shuffling throughout the semester? I'm sure we can all agree that it's a learned skill, not a talent. The question remains whether or not you can afford the overhead any longer. Discuss.
 (8%) 
 
 
  • As Matt said in class, most of us were late for the customer meeting.
  • We can't get everything work by the milestone due time. Most people can't finish their milestone by Tuesday, but there are still lots of testing/intergration work need to be done after we finished our milestones.
 (8%) 
 
 
  • We've been accused of having the wrong attitude by our customer, and the general feeling is that this accusation is reflected in a feeling of apathy about the project (people generally not going beyond the scope of their milestones, to which are some extraordinary exceptions). The problem is that maybe we aren't committing to the project the way we should be.
 (8%) 
 
 
I still don't think we've clicked with the customer at all. Not only does he look confused and sometimes on the verge of uninterested during parts of the meeting, but we still can't seem to figure out exactly what he's expecting from us. I think this is mostly due from the fact that we're not really unified during the meetings and I think it frustrates him that only 3 or 4 people contribute, while he wants the input of everyone.

Along with him, I get the impression that for a lot of topics that don't involve certain people (me included) we seem to be just along for the ride. For example, it was only during the customer meeting that I really knew what the heck was going on with the whole RDF/SPARQL standard and I'm fairly sure that I only know the surface. Maybe this separation is what we want, but not to the point that we're even more confused than the customer. Jee Yun makes some good points about this in her journal.

Additionally, a few of the presentations seem to be put on at the last minute (and it doesn't help when we say that we put something together in five minutes during another class), and it shows by the fact that you can't even see anything on the screen. This has got to be about my diagram ;p I did it the day before (took a few hours), but I couldn't figure out a good way to turn it into a presentation, so I decided the best thing was just to show the whole chart. Sometimes the projected image isn't as big as I thought it would be. And I really didn't do a good job of talking about it. I think the solution is, we should dry run the presentations, maybe on Wednesday in class, or at the team leader meeting.
it could just as easily have been my stuff. The block-diagram was ill-executed. Unfortunately I'd spent most of the afternoonn trying to get the demo working, so I really did a pretty underwhelming job on this I think. I think/hope the relationship presentation was a little better.
 (8%) 
 
 
-We are still having some issues with communication (isn't that always the problem? I know this is a rhetorical question, but yes, yes it is.). For example, I didn't know about the meeting for the response to the customer's "not happy letter" until the day of. Similarly, we didn't plan a meeting for the relationship discussion until Friday...and the meeting ended up being Friday. I heard talk of such a meeting on Wednesday, but nothing was ironed out until friday. This meant there was less flexibility in the timing of the meeting, and I, for example, had to leave the meeting early. This meant I left in the middle of, what I feel, was the most relavent part to me.

-As Matt emntioned in class, there is an overall lack of caring when it somes to things (could you be a bit more specific than "things"?), mostly wcustomer related things.
 (8%) 
 

Total: 13

7. Development Process: Proposals for change--issues addressed and why the change will help.

 
  • Brad has suggested we have fun Fridays, with team building activities every week. Interesting idea.
  • There is an ongoing debate on whether or not milestones should be moved to Wednesdays. This can give us more time to work on our milestones, but reduce the time we have to integrate our code and work out bugs. Some people have suggested that we incorporate integration into the milestone. The problem with that is that it requires everyone to have already finished the rest of their milestone first and then collaborate with others to get the integration done. This may not be a reasonable expectation, given people's differing schedules and the fact that people like to wait to the last minute to complete milestones. This is a problem in itself. It would help the whole team if people didn't procrastinate so much (haha, I know, wishful thinking, right?), since you could then have time to integrate. I think the best solution may just be to ask people to test their code more thoroughly and make sure that it behaves according to specification. This may be the easiest solution, and it is a reasonable request, but is it likely to succeed? This sounds a bit like "try harder with the same strategy", which leads me to believe it may not really be the best solution.
  • Any bugs Sohum finds should be reported to the appropriate team and that team should be responsible for fixing it. The biggest problem then is to get each team to respond and fix the bug as soon as possible
 (8%) 
 
 
ACH! Okay, Dr. Wong, I'll be more proactive. It's actually kind of interesting - with the past few days of having an ear infection, I've felt ridiculously numb to the world. Losing a sense would suck a whole lot, but having only part of it still helps me appreciate the times when I get a little bit of clarity. I'm starting to feel better, hear better, and now it's time to be more proactive in my life (anew). This should at least help with getting things done in terms of milestones, and help out the class more.

Matt, I know I haven't been very responsive to the requests for feedback, and we as a class haven't altogether. Um. Okay, well there's nothing I can say other than - I'll change that. More on this below.

I've arranged (sub)team meeting times for Tuesday and Friday. Imperative that we meet so we can clarify a lot of things, including where we stand right now.

It was suggested before (I don't remember from whom) that instead of document folders, we just submitted all documents to one folder and "tagged" them with group names. That way we can apply filters and get the documents from sharepoint that we need. That would be AMAZING. A hefty project at this point, but I'll talk to Jee Yun about its viability, along with posting some sort of announcement. Please do so.
 (8%) 
 
 
Sohum and I are in the UI team so we have been delegated as backup people for silverlight. We will have to understand the basics of integrating the silverlight component into the web app and the basic syntax. This will come in handy and take burden off of Derek as well as he takes on his new role.
 (8%) 
 
 
In terms of speaking up, I took some time at today's class meeting to talk about this. Already I saw some people speaking more in the meeting we had later in the day, people who have not spoken as much in the past. I see several people noting and agreeing with this issue in their journals. I think the next step is for me to work with those people and get some real ideas for how to improve the situation. It isn't a problem I can solve on my own, and I don't think it is something that can be entirely solved by individuals simply trying to do better, so I really need the help of other team members to come up with strategies and implement them.

I also talked about the lateness issue at the same time. We have decided that we really can't change the customer meeting time (I was about to suggest having it during the weekend ;p), so we need to work on the reasons why people are late. One thing that has been proposed which I think is a good idea is to get the work on the deliverables started earlier in the week. Another thing is perhaps changing when milestones are due, which I would like to work with Rae on because I think she has better ideas in this regard than I do. Lastly, we are going to look into some ideas for feeding team members who are on the meal plan, which offers food primarily during the same time which we meet.

The meeting we had this afternoon helped to specifically address the communication issues surrounding the relationship model. There is still more work to do, but we have made a lot of progress, and most valuably in understanding what each other are talking about. I think the team changes also helped in this regard, specifically putting Corey in charge of the Relationships & Tags, because he asked for clarification of what relationships and tags are, and in doing so helped solidify these concepts in ways those of us who had already worked on them didn't realize was necessary. Also, I think that we have made a better definition during the meeting of the separation between relationship/tags, search, and backend teams, and I think this will be of great benefit to Rae, who had previously gotten stuck a vague task that combined all three of these areas.

In other communications news, Brad and I spent about two hours talking to Barnaby and Luke after the customer meeting. This helped us tremendously, both in improving our communication with Luke, with the TAs and Dr. Wong, between Brad and I, and with direct strategies for improving communication in the team. I don't want to describe all we talked about here, but we have already seen some of the first changes come about today. It will be a long process, a lot of hard work, and retraining ourselves - including the whole team - to operate in more effective ways. I will discuss these things more over the coming weeks as we do our best to put them into effect.
 
Again, great section and very good insights. Please don't be too secretive about solutions, etc, that you came up with with Dr. Wong!
 (8%) 
 
 
I honestly have no good ideas about getting people more involved. To some degree it has to directly affect people or has to be in some way of interest to them, otherwise I think its pretty natural to be apathetic about such things. Although the letter does affect everyone in someway, I think, for the most part, people were so separated from it until the last moment that they either could not react or just felt like it was a formality that the upper management can take care of so we can just get back to coding (of which I am guilty to a degree.) So possible letting people have more input earlier on would be good, or even writing the letter as a group so people can voice their opinions before the letter is created, rather than doing some adjustments at the end.
I think those are the good ideas you're looking for. In fact, I want you to be in charge of making sure we do this next time. And every time. In the meeting today, you reminded us that we needed to address sorting. You took charge of the rest of the team and told us we were missing something that was holding you back, and you got the process started for filling in that missing piece. Keep doing that Derek. There are lots of places where we need it ;)
 (8%) 
 
 
  1. We could set a fixed time during the weekend for the coding party. That way, people could plan their weekend around that party if need be. Deciding a coding party on Friday makes it difficult to find a time when everyone is free.
  2. We just have to get excited about it. Treat the project as if it is our own personal project (which it is because we are basically setting the limits of what we want to do, with a few restrictions). Above all, this project is not something that is just going to be ignored after completion--it is something that is going to be actively utilized--if even for just a very short period of time.
  3. What can we do? To start with, we have to ensure that we all arrive to class on time. Even this is a problem and I don't think getting food is too much of an issue there. With regards to the customer meeting, it seems we are tied down as far as the time is concerned. Perhaps we could move it 15 minutes later as that would be enough time to sort out the food issues. Otherwise, it just becomes a call of whether you want to sacrifice one good meal a week (replace it with a quick meal, that is) or you want to test the patience of the customer and the members of the team who are on time. Sohum, you were working on the demo, got food, and still got to the meeting ahead of time. Thank you thank you thank you. From my own 410 experience, there will always be a reason to be late (for example, last year, I learned that 10 am is apparently an ungodly early hour). It sounds like the issue is one of excuses being accepted and a lack of respect for one another's time. How can this problem be solved?
 (8%) 
 
 
  1. Matt and I are taking a new interest in inclusivity and I'm personally hoping to give everyone some peice of the system to own. I can only think of my own experience coding on a big project and loving to be able to say "I did that part."
  2. We need to be realistic about the tremendous amount of effort it will require to bring our system to a useable point.
  3. I think I actually found a way to strike a balance between hands-off managemet (which wasn't working) and hero-coding (which got results but at a cost). This was to actively investigate and design an interface so that I could set more concrete requirements for the different groups. Furthermore, we got lots of input at the meeting today and reached a consensus that will work from here on. At the same time, I feel it's appropriate to say that this week we're taking a HUGE risk with the project, definitely the biggest yet. We are redesigning the system around a model of relationships, which while it has been shown to work by outside verification, hasn't been implemented in our system yet, so if it turns out to be extremely difficult to implement, test, and make perform well, we will have essentially wasted a week (or possibly more). I feel we have no choice but to take this risk, and I've carefully evaluated the possible outcomes and likelihoods (to the best of my ability), and I think we'll be ok. Bbut it's fair to say that this is our first big adventure out into the unknown. This is a definitely a healthy and worthwhile risk.
  4. As much as we disliked the letter, and the fact that Luke played such a Dr. Jekyll and Mr. Hyde with us in this instance, for the most part it moved us toward the right track I think, even if we were moving that way of our own accord already. There are puppet strings running around all over the place. It's amazing we aren't tripping over them all the time ;)
 (8%) 
 
 
The idea to have fun team-building exercises is interesting. We take time which we could be using to meet and design and code and instead use it for fun and games, hoping that as a result morale improves and we become more personally involved in the project. It's a gamble, since if we don't work more productively we've lost class time, which is some of the most valuable because everyone is there. Regardless of how it turns out, though, I think it's a good learning experience. It's valuable for Matt and Brad to learn how to try to motivate employees, and for the rest of the team to figure out how to allow themselves to be motivated by team building exercises.
I am behind the team-building 100%. I want to strike a balance in the amount of time we use for it, though. Also, we can do these things outside of class time as well, and I think we should.

I commend you for being open-minded and going along with the experiment.
 (8%) 
 
 
I understand that we'll need to have reorganizations, and I understand that someone will need to be on the wrong end of them. But I feel the teams could have been planned out better, and at the very least, teams could have moved from task to task, while sticking together. I spent a lot of time working to build a team spirit, and I think I succeeded, but now I need to start over. It is understandable to be frustrated about this, since it seems like all of you are continually trying something for a short period of time and then switching gears when it doesn't immediately work. Continuing my thought from above, it is unfair. But from another light, it is also a measure of the success you had with your first team, and how it has been viewed by others. It's also a measure of confidence in your ability as your team is at the center of the critical system that differentiates our application from others.

One thing I am happy about, though, is that the meeting we had earlier actually defined some things a bit better, and has helped to ease my concerns.
 (8%) 
 
 
  • For me it's because the dinner, but I think it is not a problem for me to finished dinner 5 minutes earlier. I know that it is annoying to have a meeting a 6 when the servery only opens at 5.30 and there are long lines, but it is probably a good idea to finish 5 minutes earlier to avoid another "not happy letter." Plus, sandwiches can be quickly made and eaten on the run. 
  • I think move the deadline to Wednesday is better. We can include testing/intergration as part of the milestone. If we really need all the work done before intergration, we can have midweek milestones, like the milestone Felipe assigned to me this week. It has two parts: deliverables by Sunday and by Tuesday. This sounds like a great plan. I think it would be great for you work with Felipe to figure out a good system that works for the two of you, and then report your results to the rest of the class. The two of you work well enough together that you can really help out other teams that are struggling to communicate.
 (8%) 
 
 
  • Some suggestions have already been proposed, including team-building exercises in the form of games (WIKI RACING) as a way to build enthusiasm for the project and cohesiveness as a team. The question as to whether or not this will actually increase productivity is dubious at best. Really the limiting factor on what we can do with this project has a lot to do with our other commitments, and balancing the needs of this class with others. Perhaps prioritizing assignments would help us move away from trivial tasks (the fateful progress bar comes to mind) and towards the core of our project requirements.
I'm glad you're willing to give the team-building experiment a chance; however, since you're skeptical, how about some alternative solutions? I totally disagree that other commitments comprise all the limitations on this project--there are many other factors at work here. Further, while prioritizing is important, it doesn't really address the issue you've targeted as "the problem" above.
 (8%) 
 
 
Maybe what we really need is use class time to get everyone on topic of exactly what teams are doing. (Others seem at a loss as to what can be done with class time. Feel free to offer this idea and see if it works.) Maybe instead of just going around, have team members take a minimum of 5 minutes to talk about what concepts they're working on and during this time, have everyone shut down their tablets and the Symonds computers. This is a great idea. I have also thought about holding class in one of the meeting rooms, but sometimes they are booked at 1. I agree--very good idea.


I feel that the more communication we have, albeit redundant in some cases, the more informed and sure of ourselves we will be during the customer meeting and the more we will all (not just Brad and the team leaders) be able to visualize how things will come out in the end, or how we want to change that vision.


In summary, communication, communication, communication. E-mails are easy to delete, so I don't care if I get flooded by Comp 410 communication. I may actually find information that I really like that I wouldn't have otherwise.


We need to get everyone to contribute to decisions/discussion. I think Matt did a good job of including everyone in the discussion of the meeting time. Although it may have been a fruitless discussion, it still involved everyone and their involvement gives them ownership of the final decision. This wasn't something that came from above, but that they had their two cents taken into account.
 (8%) 
 
 
-I think whoever runs into an issue needs to inform the entire class immediately, if it affects them at all. If its an issue where the person can/should just make a decision-do that and tell everyone about it. If not, make a time to meet, or assign someone else to solve the problem, but let everyone involved know its happening. Don't just start it, put it off, or wait to let others know. Tell everyone as soon as a descion is made, and make that descion as quickly as possible.

-I feel the main problem is not a lack of caring of the project itself, but rather a lack of caring for the customer. Unfortunately, we have a problem with feeling the customer is valid. We tend to, as he said in the meeting, take lightly of his requests. We feel we know what is best, and that we cant change the customer's min. So we continue with what we are doing, and ignore him. A critical part of this course is learning to owork with people..incluiding customers. We (myself included) need to learn to consider seriously the customer's request, where its coming from, and why it was proposed. Then we must decide if what he is requesting is valid...if we feel it is not, rather than ignore the customer, talk to him. If we think it's not valid, talk to him, convince him of such...but listen to what he has to say and be open minded. Exactly! I agree with him, we are thinking lightly of him, and treating him as if he doesn't matter.
 (8%) 
 

Total: 13

8. Peer review:  Positive or negative feedback for other class members

 
Hubert, let me know if you want some ideas about tags and relationships, and how they work together. Hopefully you and Aaron and I can look over everything in backend and see how it needs to change to fit in with the relationship model we talked about today. Also, your comments and questions have often been very helpful in class and meetings. Please keep speaking up and even more often. Also watch out, because it looks like from Brad's journal he is planning on giving you some big project ;) - Matt
 (8%) 
 
 
Matt: Wow, okay sorry if I seem like I haven't responded to anything. Okay I actually haven't. But a lot of things I've been okay with, when you ask for responses. Well I guess next time I'll at least tell you so even if I don't have any suggestions - it's at least something, right?
I'll tell you what: everything you did in this afternoon's meeting is exactly what I wanted you to do. I've seen for a while, Dave, that you had some really great ideas, they just weren't reaching the surface. I was impressed this afternoon. This is exactly what we need at a critical time, in the critical area. Don't stop. Don't hesitate to challenge people, to take control of a discussion. The times when you did this today were extremely helpful to the entire project.
 (8%) 
 
 
I felt like Matt, Brad, and the team leaders had to do a lot of prep for the customer meeting this week; I want to give them props for their hard work. Because when it comes down to it, nobody wants to volunteer to do extra work and somebody has to do it, and often times it's left to the leaders to do them.
I really like props, but I do have to give the edge to bribes, as I mentioned in Dave's journal. I really had to rely on the leaders, and let them delegate to their teams, because they know better than I do who the best person for the task is. Fortunately, I have you, Kevin, and Sohum to assign to everything else ;) And Jee Yun, I am really grateful for the time you have spent with Sohum and I the last couple of thursday afternoons. I think it really helps Sohum to have an extra set of eyes in trying to fix integration issues, and you have also done very well with presentations at the customer meetings. Luke told me this same thing last night. Of course, that means I will be volunteering you for more presentations ;p
 (8%) 
 
 
I have a lot of peer review this week, but I think I will add it as comments in other people's journals.

I would like to say though, thank you to everyone who worked on the deliverables for this week. We need to make an improvement about the timing of the process, and I am taking that criticism to heart. You all did a great job to bring this stuff together in the limited time available.
 (8%) 
 
 
Matt: I thought the customer meeting was organized well this time (apart from the technical issues from the projector). The agenda was to the point and the meeting was done smoothly.
Thanks ;) I very much want all the materials to be on one computer before the meeting start. (Very good idea.) If we can get deliverables done earlier in the week, then that should work. It will be a challenge, though.

Thanks for all your tireless and patient work on getting the demo's up and running. I am confident that you are in the right position, Sohum, and it has been continually confirmed.
 (8%) 
 
 
Dave wins for this week, just for finally sharing what he's been working on today at the relationship meeting, and suggesting how we can use the work search has done to build on top of the relationship model. Keep that up.
Matt has stepped up to find a place filling my weaknesses.
Sohum is still exceeding expectations with UI work, although I'd like to see him venture out ahead of implementation to get the interfaces ready for all sorts of features and at the same time show off to ourselves how much work remains to be done.
Aaron is growing into a much better leader, from the point where I was upset with his ignoring of relationship milestones to addressing the issue head on.
Rae has been extremely patient, very understanding, and at the same time more productive this week.
Derek is adjusting well to new roles I think.
Kevin is buying in to the system more, and he's going to be a star by the end I bet.
Felipe is setting the bar higher as far as proactively working to increase communication, and I wish everyone else would follow suit with his emails informing me of progress.
Yuan is still working hard, but I'd encourage her to share her strengths, and I hope to try to help her join us in owning the system.我今年夏天去了中国。我说中文一点儿。
I think Jeeyun is adjusting well but I'd like to hear more about her thoughts and experiences.
Corey is being remarkably open about moving into new role not very related to his old one.
I have this feeling that Hubert is about to really suprise us with his talent.
 
Brad, please get some rest and get refreshed for Sunday. You are playing a very central and critical role, and one that I think the rest of us don't have the same skill for. I am really pleased with the way we have been working for the past couple weeks, which unfortunately didn't get rolling soon enough to impact the last customer meeting, but has given us solid gains over the past week. Stay healthy, and don't let me forget any of the stuff we talked with Luke about.
 (8%) 
 
 
I've noticed that Matt is starting to take over more control of meetings (including class meetings) from Brad. Brad already has too much on his plate, so this isn't necessarily a bad thing, and Matt has seemed to be more intent on starting promptly and covering the totality of an agenda. However, I feel that Matt may have the tendency to inappropriately allocate time to each topic. For example, in today's class, I thought the "show up to meetings on time" topic should have taken about 30 seconds, not 15 minutes; stern criticism of tardiness is all that this really should have been. We didn't need to go around the room discussing possible reasons why people are late and possible ways to fix it when most people are only showing up two or three minutes late.
Aaron, I can always count on you to be very level-headed, astute, and practical, which is of great value on this team. Please get some rest and recharge, because we can't afford to lose that.

You are right, and I'd say even hard-wired rather than tendency. I will give you the secret weapon against this though: response. Whenever I am speaking, I will start to explain things over and over, varying the style of explanation, if I am not getting "Yes, I understand/agree" feedback, or "No, I don't/disagree" feedback. I automatically conclude, without much conscious thought, that I need to try a different explanation of the same thing because this one isn't working. I do it in writing too. Don't hesitate to move me on if I seem to get stuck in this kind of loop. I think 30sec is probably too short, though - on the order of 5min sounds about right. We did uncover a root cause of the dinner-time issue, so I don't consider it time not well spent, just spent more expensively than necessary. We are still spending a lot of meeting/class time talking too long about things, and although it has improved, we need to keep working on it.
 (8%) 
 
 
I'm glad that Matt is advocating a realist side to our design; while some abstract ideas are interesting, they're also very complicated and could cause our project to never be finished.
This is great praise coming from you, Corey. You have always provided a perspective that questions assumptions and uncovers errors in thinking before they become problems. This, in the form of your questions about tags, directly prompted this afternoon's meeting which paid off big time. Make sure to rest and get well, because we need you.
 (8%) 
 
 
Yuan, I have not gotten a chance to work with you directly, but I always hear praise for the quality of the work you do (and I see it in the authoring specification document). The insights and opinions in your journal are also very helpful. Please keep it up.
 (8%) 
 
 
Kevin, I know you liked the wiki-racing ;p Also, you always have a good "devil's advocate sense," pointing out potential problems that lie in our path. Please bring these up, and think about alternative strategies that will allow us to complete our goals while avoiding the pitfalls.
 (8%) 
 
 
I like the way that Matt is stepping up to fill in for Brad when he needs to and to take charge of our relationship with our customer. I feel bad that the responsibility of the meetings and the customer lies solely with him, but I think it was an excellent decision to pick someone to do that. I wouldn't even be opposed to making that be his main responsibility and deemphasizing his role in the backend team. Aaron may disagree though. :-)
I am really glad you said this, because I didn't want to. I would breathe a huge sigh of relief, but I'm concerned about the potential effects of losing more coding hours. I think it's not feasible at the current time, given what we need to do this week in backend, but maybe in the future. I would like to hear other thoughts, because I don't want to make this decision. Matt: you never know unless you try. Brad is the chartmaster; see if he can spare some of your coding hours.

Felipe, you are our motivational speaker, and I mean that in a good way. You also seem to be very good at delegating, which is a skill I would like to learn more about. And I was very pleased this week with the work you and Yuan did on the authoring documents.
 (8%) 
 
 
-I like that we had the relationship.tag meeting. Though the time thing sucked, we still were able to discuss issues in a relatively organized fashion, and come up with more real definiation. We could bring up what different people had as definitions for tags, and what are possible ways to solve problems. It was a good atmosphere and though time consuming and probably not as focused/productive as it could have been, a positive step towards beter communication.
 (8%) 
 

Total: 12

9. Additional Comments

 
"Objection! I object! That was...objectionable!" Anyone play that?

As a general comment, I think it's really interesting that the obstacles caused by others that you've listed are often the same things you indicate having a problem with yourself (ie, proactive feedback and communication). It's a Good Thing when this happens--it means the whole class is getting on the same page and seeing common problems. It also means those problems are more likely to receive attention...make sure they do!
 (14%) 
 
 
Luke really turned me around again to his side from where I was at this time last week. I think he had planned exactly what would happen the whole time. Sneaky.


Also, to everyone who is reading this journal in future years: Go, right now, and talk to Dr. Wong or one of the TA's about the things in this journal - particularly the points about speaking up and communication. Keep going back and talking to them some more until you understand the issues. Look at the things we will end up doing from here to address them. Talk to the staff again and figure out how this applies to your team. Then make proactive changes to improve your situation RIGHT NOW.

I applaud you for offering proactive solutions (to important, real problems), and I'm glad to see that most of them rely heavily upon communication. Agreed. These are much better than "well, we'll continue doing what we're doing and hopefully it will get better" solutions!
 (14%) 
 
 
It's peanut butter jelly time!
Next time, you need to choose one that is impossible for everyone else, but simple for me. I want to ring the buzzer.
 (14%) 
 
 
To reiterate, talk to Barnaby about your milestones! Also, your journal opens up a lot of good points for discussion.
 (14%) 
 
 
Your journal lacks depth this week--if you're going to be brief, you must still hit the high points.
 (14%) 
 
 
I hate Disney World...
Swag for you as bribe. Late; -5 pts.
 (14%) 
 
 
Late...sorry, parents? I failed to anticipate that I would be busy so late...my bad...
Late; -10 pts. And might I suggest using Firefox to spellcheck? Your typos have made this a bit unreadable at first glance (albeit very entertaining, esp. the second bullet of your proposed milestone solutions. Haha).
 (14%) 
 

Total: 7