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.

Sense Of Direction - Employee Dissatisfaction

Sense Of Direction - Employee Dissatisfaction: "Diminished investment in up-skilling and life-work planning may reduce the competitive advantage of your business."

Tuesday, November 08, 2005

Lunch Break

A sandwich in one hand and the keyboard in the other. That's been the state of software developers in the company. With ten hours of work per day, who would need a break anyway! The underlying logic for the sandwich-at-the-monitor practice was that they did not want to waste time eating away from their work-station!

Anyway, all this changed today. We moved a desk to the outside hall away from the workplace. We then set a time in the middle of the day to have lunch. We went at that time to the table and had lunch all together away from the monitors and keyboards and sitting with each other.

Benefits
  • A real break revitalizes the mental energy of the software developers, specially if it's taken away from monitors, keyboards and tail or tailless mice.
  • Sitting all together instead of each at his desktop during this lunch break was enjoyable and made us chat together and got us closer to one another. We even discussed some side issues that affected our work or that were laterally related to it.
  • The third benefit is to mentally separate lunch and break time from time for work. If they two are blended together like was the case before, then when it comes time for work the feeling one having lunch and having a break may blend with ones 'feeling' of work and reduce ones alertness, concentration or readiness to work.
  • Finally, the naive idea of eating in front of the monitor in order not to waste time for work is absurd. Come on, give me a break! How can one be productive programming on a computer and writing code when one has a sandwich in the other hand? What kind of productivity do you expect from this? Besides, not getting a real break in itself will reduce performance due to continuous work and absence of time to regenerate and revitalize ones energy.

Monday, November 07, 2005

Social Security Number

Social Security
Who said government employees are lazy or inefficient? Today I went to the social security office in Nasr City, and the lady at the windows gave me a scrap of paper with my social security number jotted upon it after I gave her my ID card. She entered my name (I think) into the computer (for a number of times it seems though) then asked me if my mother's name was so and so, and I said yes, then she jotted my social security number on a small peace of paper and gave it to me. That was it! I did not believe myself, the process was way easy and fast, far from what I had expected to be honest.

The social security office is found in building 59 of Rabaa Estethmari buildings. If you are going down El Nozha street with Midan El Saa behind you, turn left 3 roads before reaching the Tiba Rose shop or Dar El Defa El Gawwy. The social security office is near the end of this road on the right side (building 59).

Despite the absence of a smile, and the presence of what I would like to politely put as the "opposite of a smile," in addition to a lazy attitude in performing the duty and giving me the impression she is absolutely tired, yet she did do her job and I was so glad. I did not pay anything, I did not wait a lot and I got exactly what I wanted, my social security number by showing her my ID.

Ka3b 3amal
I went to the labor office which is found at the end of the street where Genena Mall is, not the end towards Abbas El Akkad street, but the other end. It is found at its corner, on the left side. There they informed me, after asking about my address, to go to the other labor office and the guy gave me directions on how to reach it and also told me what papers I needed when going there. Was kind of cool. I thanked him, went back to get the papers then went off to the other labor office just as he directed me.

I reached the other labor office which happened to be in building number 16 right in front of El Ahly bank, which is in front of Dar El Defa El Gawwy. It was there that the (at last) smiling woman told me I had to provide her with my social security number and directed me to the location of the social security office which was thank God nearby. By the way, all those places I went walking! After getting my social security number, I went back to the labor office and there I did not find the lady who had asked me for it, but there was another one there. I waited till she finished with someone, then she gave me the paper I asked for after filling it and looking at my ID, university graduation certificate and social security number. I was so glad upon leaving the office with the paper I wanted in my hand. I did not pay anything, I got it in the same day and I got what I wanted. Thank God. Who said government employees are no good in Egypt. Perhaps a bit lazy and give you the impression of being really tired, yet they seem to do their job ad the end. It least that had been my experience today. After all, their system of work has nothing much to motivate them, so we must understand their conditions well and not expect from them the energy boost we may ask from private sector employees.

Wednesday, November 02, 2005

Seminar Evaluation

Strengths
  • Well prepared.
  • High confidence in delivering seminar.
  • A member of the audience asked a question. This indicates build up of interest in the seminar.
  • Use of whiteboard for explanations greatly increased interest and alertness.
Weaknesses
  • Low faint monotonic tired voice causing the audience to lack interest and made them sleepy. Gave the impression of doing a chore. Lacked enthusiasm, motivation and energy causing the seminar to be mostly boring.
  • Visibility of text on monitor was not high for all the audience.
  • Did not set context strongly for the seminar by giving at the beginning of the seminar the big picture in which the topic of the seminar fits.
  • Should have explained technical concepts without asking audience if they did not know its meaning. This embarrassed them to ask for its meaning even if they did not know it.
  • Giving too much details trying to cover all points in sequential order with no regard to their level of interest or the need of the audience to them. Appeared more like an academic lecture. It is better to use interesting attention-grabbing points as pigs upon which to hang the rest of the presentation.
  • Should have related seminar content more to actual daily work of audience on their current system specially when giving explanatory examples.
  • Smoother communication, a clearer message and a higher level of interest could have been achieved by using down-to-earth words instead of elaborately elegant wording in an attempt to create a technical or professional air.
  • Dependency on the PowerPoint presentation and reading its points sequentially instead of making a conversation with the audience. This caused boredom and reduced interest and attention.

Tuesday, November 01, 2005

Presentation Tips

I found this wonderful PowerPoint presentation about how to deliver a good presentation. It is packed with useful and practical tips that are clearly written by someone who has been there done this and not just a bunch of theoretical and unpractical points. The point I praised the most from among all those mentioned in the 41 slides of this presentation is: "Have a conversation with the audience, rather than lecturing them." I cannot stress that more strongly. It was actually the lack of this very point that caused our first seminar to be way too boring.

Legal Accountant

He was very polite and friendly, the legal accountant I called today for the first time. Let's see what he'll be able to do. I've set a meeting with him tomorrow at noon. There's a sense of relief in having someone do all the paper work for you. Now one can focus on what really needs to be done and requires a higher degree of creativity and 'domain' knowledge such as recruiting brilliant software developers.