A Team IRC meeting
First meeting
1- First of all, understand that IRC meetings and chats are much slower than talking so be patient
2- IRC in nature is a very casual environment, so don't be surprised to see casual talk like : wassssssup!!!!!!! But in at the same time, make sure not to cross the line by used bad and impolite words. (no "F" words for example)
3- Since visual contact is not possible, every now and the drop a word to show the meeting holder you are there ok?
4- when in a meeting being funny with one or two smart thing to say, it ok, but again, DO NOT over do it
5- when you enter a chat room and you see a meeting is happening, if you must say somehting to someone, use their nick like:
6- people with @ in front of their name are moderators. They can kick you out of a chat room if you misbehave, or even ban you from the chat room for ever.
(This is the major difference between IRC and kindergarten chat programs like MSN)
7- if you are to meet few of your team members for a meeting in a chat room, say in #seneca and you find out it is very crowded and busy... you can create temporary chat rooms by simply /join #A_NonExistantRoomName
8- if you are talking about a program you wrote and want to show it to your friends use the http://pastebin.ca website to copy the text and post it, then copy the url and put pass the usl also, if you have a very long URL and want to give it to others, do this: use http://tinyurl.com/to copy your url and make is small.... when you click on the short url, tinyurl.com will redirct you to the long one :)
Second meeting
At this meeting, Fardad distinguished function of three directories(branch/tag/trunk) in SVN for us. It 's also the rule for our OOP project in the future.(Some sentences are quoted from Fardad)
Branches:
Purpose : It may be team member's another code backup place. Branches is the directory that team members can commit to even if their code does not compile. In the branches, the subdirecotires that are copies of trunk to work on a part of a project are called workspaces.
How : Each team member should create their own sub-directory in it and name it with same name of their learn ID. Meanwhile, they may created several sub-directory in their own directory for the item which they are working on. Each team member update the trunk, apply her/his successful changes to the trunk, compile, update again , compile and then commit. But they should only commit to trunk, when their code are tested and proved to work in the branches directory of them.
Example : if "fsoleima" working on function/class "putstr", "backspace" and "delete", then the branches should look like:
branches-| |-fsoleima | |-putstr | |-backspace | |-delete | |-other one . . .
the last three directories and copies of trunk in which team member work on her/his part of the project. The team members may commit their own work at anytime, and it won't ruin others work.
Tags
Purpose : It is the direcotry that keeps copies of successful points of the project.
How : All these snapshots and copies are done using the branch command. Right click on trunk and then select branch and right the destination of copy, if team member branch into branches dir, then it is creating a workspace. If team member branch into tags dir then it means their trunk is at a sucess stage and they are creating a milestone.
Example: For our text editor project, the first time the frame of the text editor is done, although the test editor in no way is complete of functional, but one step of the way is completed. At this moment, a snapshot of trunk is taken, and it is copied to the tags directory as a milestone of the project. Usually it is called with sequential names like: m01,m02... or TextEdit01-frame , TextEdit02_SaveAsDialog
Trunks
Purpose : Trunk is the current state of project and it should and is ALWAYS in a compiled state. It is root of project, and it should have NOTHING other that the main unique project in hand.
How: For our team, there are supposed 8 text files (9 including Fardad) with team member names on them, in case they have somthing to say.
The fourth meeting
There are three topic in this meeting:
- Default arguments in C++.
For function like :
foo(int a=10, double d=2.34, char c='z');
When we call this function as foo();foo(1);foo(1,3.4); foo(2,344,34,'a') The first one all the args will be set to default values, and you can only miss from the end and nothing from middle. The second one only the double and char; The third one only char; the last one no default value will be used.
- About the project
* Encapsulate the biof functions into object oriented classes. * trunk/Prj will OpText trunk(Optext is the name of the text editor of project) * Check link: http://zenit.senecac.on.ca/wiki/index.php/OpText_Text_Editor_(AS2)_-_OOP344_20101 * The io_fields are things like: 1. Lable: to show a text; 2. LineEditor: to edit a string; 3. CheckBoxList: to select one or many option from several choices; 4. TextEdit: to edit a text(series of strings) 5. FileSelect: to display the names of the files in current dir and let the user to select one. ... ... * We may group these io_fields into some kind of "Forms" to accomplish certain goal. 1. A form to save a file; 2. A form to ask a question(messagebox); 3. A form to Edit a text(OpText); ... ... these froms displayed on the screen with many io_fields, which will be at the properly position.
* BFrame has row,col, for its top-left coordinates respectively, and also will have width and height to keep track of its size. The frame should be able to have th option of showing the border. Check detail with link: http://zenit.senecac.on.ca/wiki/index.php/OpText_Text_Editor_(AS2)_-_OOP344_20101#BFrame
- Task assigned.
Check detail with link: http://zenit.senecac.on.ca/wiki/index.php/OpText_Text_Editor_%28AS2%29_-_OOP344_20101#A_Team