Sunday, January 31, 2010

Challenges of remote collaborations

Mostly I am working on either course projects or company projects with other people in the same site. But the experience of working with partners remotely on the same project is quite different from the regular one. New challenges arise here:

1:Time zone differences conflict with regular schedule. When working in two sites of different time zone, team members always have to keep in mind of the time in other sites. If there is a customer issue in UK, and it requires the fix by US team, then UK team should be aware that US team may not respond to their mail during UK's daytime, as that would be the night in US. It is very useful to have a calendar with the overlapped available time of different teams.

2:Communication Matters a lot. Different countries have different culture. Maybe it is polite to say something in your site, but it is not always case to say that in another site. And people from non-English spoken area may not use it as well as those native speaker. So the slangs in mail or phone call will be the obstacles in communication.

3:Honesty and trusts are bridges. Since team members are working in different sites, it is not possible for one to know exactly how long others spend in the office, or how much efforts others have done for the project. Then it is the most important for each team member to report his/her working hours and achievements regularly with honesty. And it is also the most important for them to trust their partners. If everyone doubts the performance of others, then there is no way to succeed together.

4:Size the work carefully. Normally if teams are working in the same site, they will have a rough idea of others' efficiency in work. But if they are working remotely, it is not wise to measure the working hours of some task using one site's standard. Sizing the work without considering the site differences is quite dangerous and may finally push one site too much or drag the other site's process.

5:Inform others where you are. It is risky to work alone without telling others your progress, especially when you are working on something that has already been discarded by the team.

Why Apple refuses flash in its mobile devices

Jan 27, 2010, Apple releases its latest ambitious product-iPad. It has the iPhone OS, with 9.7 inch screen and 1 GH processor.So far everything sounds not bad. But when Steve was demonstrating those publisher's websites, chunks of unloaded spaces were quite outstanding on the 9.7 inch screen. People were surprised to realize that we still couldn't see flash on a big screen this that. And according to Steve Job's words, Adobe was too lazy to do a good job on flash. That was the main reason why Apple didn't take flash into their devices like iphone/ipod touch/the upcoming ipad.

I don't know whether Adobe is really a lazy company like that. But one thing I know is that most websites we are using nowadays have used flash. A survey in UK showed that over 60% of users won't buy ipad, among them, 50% of them count the lack of flash as one of the reasons they won't buy ipad. If Adobe is really as lazy as what Apple said, then I don't think there will be so many users weigh flash over their ipad.

Essentially, Apple is just a company. It is a charitable foundation. Precisely, A company will commit to its stock holders and owners. And ipad is actually nothing more than another cash cow to help apple break its revenue record once again. And I think the reason why Apple doesn't take flash into those products. Maybe Apple wants to set up another standard like HTML5 to replace flash? Maybe Apple will have to disclose some hidden information to developers if flash is allowed?Maybe Apple treat Adobe as the partner of Apple's worst enemy Microsoft? Or maybe Apple knows for sure their products will sell well even though users complain for the lack of flash? Well, only those top guys of these companies know the reason.

Sunday, January 24, 2010

Finally, Oracle can start building its ambitious empire

2 days Ago, EU gives the permission to Oracle for its deal of acquiring Sun Microsystems. I guess Oracle may feel happy and upset at the same time: they are happy because the EU finally allows the acquisition; they are upset because both Oracle and Sun have lost quite a lot since they announce the deal. In one presentation by Larry Ellison, he mentioned that the delay of acquisition caused a loss of millions of dollars per month for both sides. So people can image how painful it will be to see a huge deduction of revenue at the end of each month. Very soon , when we install the latest JDK, it won't be marked as Sun Microsystems, instead, it will be Oracle.( I can't imagine that, but it will be true sooner or later....)

So now who is feeling painful? Perhaps IBM ,or HP? After the acquisition, Oracle will be a hardware provider and a software provider at the same time. And right now the bigger player who can do both is IBM. I still remember that one year ago there was a rumor that IBM would acquire Sun. And after several months it turned out to be Oracle who got the deal. Followed by that was a long period of debacle between Oracle and EU. Though the cause for this is not that outstanding for this huge acquisition, there may be some other factors blocking the process. (I am just saying, who knows.)

Actually I don't care whether Oracle would be another IBM or not. As a non-entity, the fight between giants is just a show for me. What I am interested is some strategy that Larry Ellison may deploy in the future. As he doesn't seem to be a Cloud Computing fans right now, and all the other big companies like Google, Microsoft, Amazon, IBM and Sun(At least Sun is still a separate company right now), they have started their Cloud Computing service for a while. And there is no sign so far that they don't want to get their share of cookies. So what will Oracle do after it acquires Sun? In a video Larry Ellison joked the idea of Cloud Computing. Will he make this joke into practice? Will Oracle stop the cloud computing development in Sun after the acquisition? Who knows. We'll see it.

I am setting up another project right now, and busy with those server configurations and project management. Maybe I could write it down here as kind of experience sharing with everyone.

Saturday, January 23, 2010

Differences between Chinese and Western Companies in project management (from an interesting PowerPoint)

One day when I was programming in my office, my team member sent me a PowerPoint talking about project management. And he mentioned one slide and asked me to take a look at it carefully. So i went to that slide directly and took a close look at it. The slide had 4 diagrams inside. Each of them was a comparison between Chinese project management and western project management. However, I could only remember 3 of them now.

The first one was about solving a problem. The Chinese employee would drop by a large number of people and then came to the target.According to my understanding, this means that in China, you have to maintain a huge grid of relationships in order to work through some problems. Not all the problem could be solved by the paper rule. Sometimes a permission from some top person would solve the problem in one minute, while the dislike of a boss may keeps your nice solution outside the door. However, in western countries, team may focus on solving the problem. So the employee would just go straight towards the problem. They have clear procedure and steps. Hence in the diagram the arrow showed a very clear path for the western employee to reach the goal.

The second one was about the classification of employees and employers. The Chinese employees in the diagram were a group of small characters while their manager was a big-sized character with an outstanding color. I assume that means the Chinese boss would have more power and use a top-down management to manage his employees. In western side, everyone looked the same. You could hardly distinguish them. For this point, I agree with the idea here for sure. Since my manager has never behaved like a Chinese boos to me, I would say he is more like an experienced friend.

The third one was showing the situation when employees are facing some problems. The Chinese would took a look at the problem. and then if possible, bypassed the hole(stands for the problem). The western employee would be in the contrary. He would just go straight toward the problem and try to solve it as much as possible. I am not sure whether it is always a good idea to face the problem directly or bypass it. But I know we need to be smart when facing a problem. There is no a stereotype for all the problems.

Perhaps you have seen these pictures before, but I think you get my idea now. In all, it is just an interesting comparison of project management between these two parties.

Sunday, January 17, 2010

Wave is faster now:)

I just had a meeting with my partner yesterday talking about our project. I logged on my google wave account to start a new wave as our meeting minutes. I realized that it is much faster now than several months ago. The concurrent control of typing is quite smooth now without delay. Google has done another nice job for us. And perhaps that's why it is one of my favorite company in the world.

But I start to think the reason behind this change. Is it because of new algorithm? Are there more severs providing the service? I guess the second point should play a role of this change. I remember that at the beginning when it was quite slow, Google suggest us to use our own servers for wave. Apparently I don't have that much money to buy/rent a server for that purpose, but now the performance has enhanced. That means the server which serves my wave has fewer workload than before. And I asked my friends on wave, they also have this feeling. And I am quite happy that we can chat in a wave, seeing everyone typing and erasing now.

If more servers are there, would it be related to cloud computing in the future? If companies are suggested to buy/rent their own server for the use of wave internally and users are suggested to buy/rent their own server for the use of wave with friends, isn't it business of cloud computing?If so and wave is really penetrating into all areas(blog, email, IM etc) , then it could be one of the successes of cloud computing in the following years:)

Thursday, January 14, 2010

Why is it Open Source?

Before I joined current team, I didn't have much practical experience in open source project. All the products I have worked for before are just commercial and aimed for those big customers.However, things like Linux,Firefox or eclipse have been quite popular there for a long time. Then I start wondering why they can survive there in such a commercialized society. Why is it open source?

Take eclipse as an example, I guess it should be the most popular IDE in java world. And you can download almost all the source code of eclipse. There are thousands of people who are developing the official eclipse and millions of developers who have used eclipse once or more. Then why is it open source?

From the aspect of business I can think of the following reasons so far: gain market share, set up standard, and win the reputation from programmers.

If eclipse is not open source, there won't be so many developers who indulge in creating new plug-ins for it and making use of this framework for their own purposes. You can find numerous commercial products there based on eclipse. Without the open source, it would be almost impossible for them to create their products from eclipse.

When the software gains the market share, it will have the trend of becoming kind of standard in solving similar problems. Companies who initiated the open source project will hence run ahead of their competitor as they always have to follow the "standard".

Last but now least, I guess that everyone prefers free software. No one wants to pay a hundred dollars for something if he can get another similar one for free. For me, if someone gives me free service and it is in fact very good, I will have a good feeling for him. The same thing is applied to the company who make the software open source.If it is a good software and the inventor make it public, programmers may have kind of emotional preference to this company.

Personally, I like free things. Google maps, gmail, linux, youtube (though not all of them are open source, but they don't need to be)... They are great things. If all the software needed to be developed can be open source, we will have more creations in IT industry.