Sunday, March 19, 2006

T-Shirts and Team Building

It's surprising how some simple things such as distributing t-shirts with company logo on employees can go a long way in building a team spirit. Today we asked our team to come pick t-shirts with the color, size and style of each one's choice. It was like a mini-party where each went through the different t-shirts checking for an appropriate size and a color that he liked. After that we all had a group photo, actually many photos together. It was very nice. Then several of us got their camera phones and kept taking still more photos of us together. When we went back to our desks, still wearing the shirts as none seemed to want to take them off even after we were finished with taking the photos, everyone appeared to get back to work with a better spirit. That's what I call team building. It's amazing how simple things as t-shirts with company logos given to employees can go a long way in inducing a team spirit.

Thursday, March 16, 2006

Zedny

Zedny is one of the many entities that have sprouted quickly in Egypt over the last few years delivering human development training. Zedny is by large the most popular, and I believe, best of them all till this date.

Zedny started a few years ago by providing human development training courses such as time management, job hunting, CV writing and the like. Zedny offered low cost training sessions for a large number of youth. A training session may be attended by 200 or 400 attendees. It is more like a seminar. The large number of attendees makes up for the low cost of the 'course'. Zedny made good use of the Internet to spread its word among youth. It used mailing lists, groups and the power of forwarded emails to spread its word among the rapidly growing Internet-savvy youth population of Egypt.

Currently, Zedny is operating from the premises of Rabaa Mosqe, which is located in Nasr City, Cairo. They have an office their and they used the wide halls present next to the Rabaa Mosque. Anyone who wants to attend one of the courses pays a minimal fee, something like 20 LE or 40 LE to attend a course of perhaps 8 sessions (around 2 hours for each session). It varies from course to course but this gives you an idea of the price and time range of courses offered by Zedny. Courses focus on human development topics and topics that are of interest generally to the youth. One of the courses for instance was how to select your life partner.

If it is the first time you are attending a course at Zedny, when you go and pay for that course you fill out a form with some info about yourself (name, address, phone ... etc) and they make you an ID card which you go get it from them at a later day. If you later go and register for another course, you use this same ID card. The interesting thing about this ID card is that it has a barcode on its back, so whenever you enter a session that you have registered for, they just pass your ID card in front of a barcode reader, much like the one used in a supermarket by a cashier on a product, then you enter to attend the season. It's a cool way of keeping track of attendance in an easy way and verifying who is registered in the course, given the large number of attendees.

You can find information about courses currently available at Zedny and who delivers them at their web site Zedny (the web site is in Arabic). Those who deliver the sessions are volunteers, they do not receive any monetary compensation for their efforts. The money goes back to Rabaa for charity purposes. Al Ahram Weekly has an article about Zedny: Concept Promotion. Zedny also have a group online: Zedny Group.

The word Zedny stems from the Quranic verse "Wa koll Rabbi zedny 3elman" which means "Ask God to increase your knowledge."

Wednesday, March 15, 2006

Ethics 3

Dr Sherif's sessons are a model for how to deliver training, the kind of training which leaves an effect on the minds and hearts of people and moves them to positive action. It's the kind of training that not only leaves people hoping and wishing they should do so and so, but makes them go beyond that and actually move and do what they see has to be done.

Dr Sherif uses a lot of stories while he is talking, real life stories that he has either experienced first hand, learnt about through a friend or knew about through other sources. The session he delivers is composed mainly of questions he asks to the audience, stories he narrates and comments he provides on the answers the audience give or the storied he narrates. His comments comprise the smallest part of the session content, while stories and questions directed to the audience compose the bulk of the session.

Dr Sherif derives his conclusions from the voting or response of the audience and from the stories he narrates. This method of stories, audience feedback and delayed or audience-derived conclusions are what make his words convincing to the mind and soul and drive people not action. Another thing which helps produce this effect is that he does not talk in idealistic, theoretical and impractical ways, instead he talks real-live, he talks day to day events and actual scenarios.

Monday, March 13, 2006

Dr Sherif, Ethics

Dr Sherif mentioned 5 mental tests that help you find out if an action is unethical. I remember 3 of them now:
  1. Put yourself in the other person's shoes. Do you find this action okay if you were in the shoes of the other person? If so, then the action is ethical, if not then it is unethical.
  2. What does religion say about this action? If religion forbids it or says it is bad, then it is unethical.
  3. Imagine this action is generalized and is now done by all people. What happens to the community and the world if this action is generalized? If the world falls into chaos due to this or is harmed, then the action is considered unethical.

Monday, February 27, 2006

Zedny, Training and Ethics

Yesterday I attended my first session at Zedny. The session was delivered by Dr Sherif founder of Resala, a rapidly-growing youth-fueled Egyptian charity organization. The subject of the session was Ethics. Dr Sherif used to deliver a Work Ethics course at Cairo University.

The content of the session, which was about ethics, was fine but what really interested me and was exceptional was the way Dr Sherif delivered the session. His method of delivery and the instructional tools he used were a model to learn from in delivering training.

The sessions was more like a workshop, despite the large number of attendees which was nearly 400. Dr Sherif kept relating many stories along the session, true stories that happened to him, his friends or his students. He gave a break during the session. He asked the audience a lot. He let the audience give their views. He listened. He then reached his conclusions after listening to what the audience said. He also took votes and used the whiteboard to jot down what the audience said or condense it.

Tuesday, January 17, 2006

Daily Scrum

Today as we were just about to start our Daily Scrum meeting, we discovered that one of the team members has switched to another team! After getting over our initial astonishment, we reassigned him to attend the daily scrum of the other team he has now joined. If it was not for the daily scrum, this team member would have been working with the other teams for several days without the rest of us even knowing about it! That's a demo of how Scrum practices lead to high visibility.

Monday, January 02, 2006

Retention of Software Developers

  • Working on developing interesting and challenging software solutions.
  • Using cutting edge technology, tools and methodologies to develop such software solutions.
  • Continually learning new things and improving ones technical abilities (knowledge and skills).
  • Getting a fair salary within the lines of the competition of the local market.
  • Seeing a career advancement path, expecting promotions and reward for performance.
  • Getting recognition, feeling valued by the company and having an important role in the project.
  • Having a say in the design and direction of the project. Exercising ones creativity and being heard.

Thursday, December 29, 2005

Egyptian Labor Law

Here is a sum up of the 'new' Egyptian Labor Law by Business Today Egypt: Egyptian Labor Law.

Wednesday, December 21, 2005

Bluetooth

My cousin told me about bluetooth a couple of years ago and he was so excited about it telling me how the 'new' mobiles can do all sorts of interesting things with it. A popular example of bluetooth use was pinning a bluetooth enabled pin on your shirt upon entering an exhibition and as you pass by every booth, those in the booth can automatically read information stored in this pin on your shirt using their bluetooth enabled equipment. Looked and sounded exciting at that time.

Although I've not seen myself this example in practice, the bluetooth pin used at an exhibition, yet I found bluetooth to be a very interesting technology when used on mobile phones. After taking several photos with my Nokia 6630 I then went near my computer and transferred all photos and videos from the phone to my computer without connecting any wires. It's cool.

Tuesday, December 06, 2005

Starting our First Sprint Backlog

Today we created and started writing in our first Sprint Backlog. After two Daily Scrum meetings, we decided we can make use of a Sprint Backlog to get used to writing in it and get a better feel of the project progress.

We used a single spreadsheet in an Excel file for the Sprint Backlog. We share this single file through SharePoint so we can all have read and write access to it without conflicting with one another (by using check in and check out).

After today's Scrum meeting, I passed by the team members one by one each at his workstation (there were 9 of them) and showed him how to use the Sprint Backlog, how it fits in the whole process and what each of its elements means as well as its significance to the whole process of our project.

I believe again Scrum has proven to be good and showed promising signs. I believe now by starting to use two of Scrum's elements, Daily Scrum meetings and a Sprint Backlog, we are starting to reap some of the benefits already. I believe Scrum could be our way to go in the next phase of the project. I believe we can start implementing it fully by then. The good thing is that by then we would have a stronger grasp of it having used it, if only partially, at the last part of our current phase of the project.

Monday, December 05, 2005

Our First Daily Scrum Meeting

Today we had our first Daily Scrum meeting. We all stood up in a circle (similar to the standup meeting in extreme programming). We were 10 all together: 9 developers and the 10th was myself, acting as the ScrumMaster in this case.

Each developer mentioned what he has done since the last Scrum meeting, what he will be doing till the next Scrum meeting and any obstacles that stand in his way. Although the team were not yet that comfortable with the Scrum meeting and did not talk in the best way, yet they started to get the feel of it. As the ScrumMaster I guided them through the process by first reminding them of what the Daily Scrum meeting is all about and how it is done. I had already given them a brief training session about scrum in the previous day. During our first Daily Scrum meeting, I tried to keep them on track by guiding them to mention the 3 things required (what they did, what they will do, obstacles facing them) and keeping them from talking about things that are not to be talked about during the Daily Scrum such as how to solve specific problems they faced or discussing alternative paths for some elements of the project.

Although it was our first Daily Scrum and we did not actually do it in the best way, yet I feel we did benefit from it. I think now team members will be more motivated to do useful work each day because they will be mentioning what they have done in front of the rest of the whole team. It also keeps everyone informed of how the project is progressing and how its different elements are going forward. Furthermore, two pairs of developers found out they need to meet after the today's Scrum meeting in order to further discuss specific things in their project to resolve problems that showed up during the Scrum meeting.

I believe the Daily Scrum meeting is a very good idea. Although we have not yet implemented Scrum in its entirety and only started by implementing this small part of it, the Daily Scrum meetings, yet it is already showing promising effects. Perhaps gradually we can introduce the whole of the Scrum process to our team and start using it fully by our next iteration of the project. Bottom line: Scrum looks promising and we will continue to integrate more of it in our work till we fully implement it. We feel that this will result in better productivity and better project management of our software development efforts.

Sunday, December 04, 2005

Outlook Nightmares

Been using Gmail for quite a while now. My hotmail and yahoo accounts I just keep in the background and try to dry out by not using as much as I can. I use Gmail for all my email communication and all my serious needs. I've come to depend on it now totally and got used to its cool way of organizing information (aka: conversations, labels and easy search).

At work now I have to use Outlook to check and send email from my work email account. It is utterly a nightmare! No conversations in Outlook! That's extremely terrible. When using Gmail I can easily follow up on back and forth emails between me and another person. I do this so easily. On Outlook however, I keep digging my way trying to find the scattered emails that went back and forth between me and another person. That's utterly terrible. I really need to have Gmail-style conversations in Outlook so I can find it palpable.

Tuesday, November 29, 2005

Scrum

In my search for a software development methodology to help us out of fighting with deadlines and long working hours, I've stumbled upon Scrum after being interested in XP and trying to figure out what MSF is all about. Scrum turned to be interesting specially after it has been refocused more towards project management of software projects repositioning itself as a complement to eXtreme Programming (XP) rather than a competitor. While XP focuses on the software development itself and its details, Scrum focuses more on higher level activities such as project management.

I'm trying now to understand more how Scrum works and then I can try borrowing some of its elements and implementing them gradually to enhance our project management practices. Perhaps we can start benefiting of XP as well later on and integrate both Scrum and XP into a system tailored for us that works with us and improves productivity.

Wednesday, November 23, 2005

CVs to Interviews Transition

If a CV looks promising:
  1. Call the candidate on his mobile. Arrange a time and date for an interview.
  2. Add his name and mobile number in an Excel file.
  3. Enter the time and date of the interview in the Excel file.
  4. Make an appointment in your Outlook Calendar.
  5. Send the candidate an email with time and date of the interview and the address of the company.
  6. Move the email (containing the attached CV) to the Promising folder.

Screening Software Developer CVs in Egypt

In order to help me create a mental image of an applicant upon scanning his or her CV, and to help me quickly classify the CV in my mind as a preliminary step for further deeper examination, I look at the following pieces of information in the order presented below:

  • Name, gender
  • Location of residence.
  • College and university.
  • Graduation project, what it is about and technologies used in it.
  • Previous employers, role and achievements there.
  • Date of birth.

This enables me to create a mental picture of the person behind the CV. After that, I scan for specific technologies needed using the Find command. Examples of specific technologies I scan or are: web services, XML, AJAX, JSP, struts, Linux, JavaScript, CSS, UML … etc.

This quick way of scanning the CV helps me quickly weed out unsuitable applicants and sort out the promising ones. After that one can start having a deeper look to see who will be asked for an interview.

Monday, November 21, 2005

Visual Studio Team System 2005

VSTS 2005 has some cool features supporting MSF (Microsoft Solutions Framework).

Benefits of using MSF features in VSTS:
  • Reduce time wasted by developers asking, figuring out or arguing about how a feature should work. By using and sharing scenarios such wasted time would be eliminated.
  • Tasks can be divided and followed up easily by project manager. This enables tracking of progress and also helps measure productivity of each developer.

Thursday, November 17, 2005

Microsoft Solutions Framework (MSF)

I've started wandering around MSF (Microsoft Solutions Framework) in hope of grasping the essence of it. I've went through MSF version 3 and MSF version 4. I've been to VSTS (Visual Studio Team System). I've gone through MSF for Agile and MSF for CMMI. I've read about MSF Formal. I've been reading in the guidelines, in Microsoft's view about UML and all that stuff. Bottom line: I've immerged from a lot of confusion to still more confusion but then at the end things started to clear up a bit for me yet still are somewhat vague.

Microsoft's MSF though seems to be interesting. I've started today writing a Vision Statement and a file about a Persona. I plan to start writing next about scenarios then quality of service after that.

Wednesday, November 16, 2005

Windows SharePoint Services

I've often heard about Microsoft's SharePoint but did not really think high of it. I just recognized it as an over-hyped new thing by Microsoft but not really something useful. Yesterday, this view of mine changed.

I remember once working at a huge place where communication was extremely bad. We had and internal phone system, internal email, actual physical mail boxes as well as office boys that can pass paper messages around. All those different media of communication we had in our hands but they were used in very inefficient way. I really hoped for an intranet with a web portal that could make communication between the large number of employees easier and streamlined. Yesterday, I discovered that SharePoint can be the answer for my long sought dream.

We have not yet fully used SharePoint or even made use of some of its features, but I've started to realize its potential. After playing around with SharePoint trying to figure out and use its features, I realized I need to learn more about it to be able to discover its features and potential. I started reading in a book about SharePoint and the first few lessons were interesting and of benefit. I'm more aware now of what SharePoint is capable of doing.

Monday, November 14, 2005

Group Interview

Yesterday I had no interview scheduled. A colleague told me there were 4 guys at the door handing out their CVs and asked if I wanted to interview them. I told him to let them in and seat them. I went and found to of them inside and the others were still out. I was not sure how to proceed. Shall I ask one by one to take an interview with me? That would be fine for me and perhaps the best approach, which I am used to also. But the problem is that I'll keep the others waiting. So, I decided to make a group interview for the 4 of them at the same time! Sure it will not be as efficient as a standard one-on-one interview, yet one has to deal with different situations as they arise.

I had not heard about groups interviews before, let alone made or even had any. The idea just popped in my mind at the moment, and I was not even sure if would be 'feasible'. My previous experience in delivering training and meeting surprises that come up on class made me able to handle this situation with relative ease. I am used to dealing with new situations as they come and do on-the-fly 'planning'.

I made them sit on 4 chairs and sat on a chair facing them (without a desk in between us for better communication through body language). I then proceeded to ask them about their names, and numbered the CVs in front of me in the same order they were sitting in front of me from left to right. I then asked them one by one about their projects, tools they used in the project and other questions. Finally, I probed more with one of them who seemed to be of special interest to us because of his J2ME based project and we did need a J2ME Developer. At the end I thanked them and told the J2ME guy that we might call him.

That was the first group interview I made and it was kind of interesting yet sure a one-on-one interview would still be needed to know more about a candidate before hiring him.

Wednesday, November 09, 2005

DSL Nightmares

Ok, yesterday it took ages to download windows and office patches. Actually, I came this morning to find the patches still downloading! And guess what, we have a 1.5 Mbps ADSL line (feeding 9 or less workstations).

Today after setting up my Outlook and connecting to Exchange Server to download my emails from there, it took ages to download them (they are still downloading till this very moment I am writing in).

I called our ISP trying to figure out what the cause was and to vent some of my anger out, but guess what, the phone kept ringing ringing and ringing and no one answered! I decided to pay a visit to their office. That I did and did it with force. I met the person responsible for sales there, she was good and explained the issue honestly so I asked her for a refund and she did not mind. At least she was honest enough to tell me that the problem will not be solved any time soon and that it will not be before one complete month from now that the upgrade they have issued will take effect and be implemented. She also did not hesitate to agree on a refund upon my asking and just requested some more details from me.

I'll try to check with another ISP to see of a switch in ADSL providers will cause us to be cut off from the net for a while or not.

Update: I have contacted the other ISP and they told me it will take from 3 to 4 days to install their service after I provide them with what she called "cancellation number" which she said I get from our current ISP to indicate their service with us has been cancelled.