Tuesday, October 23, 2012

Driving in the dark

Been awhile since I last blogged, and for good reasons too.

The cs3216 final project is picking up really fast. Adding onto my endless assignments and exams which I hardly have time for, the hours on the clock seems to be insufficient. It's so weird that I am spending more time on cs3216 than my biz mods together even though It is not my core.

Our project is doing well so far. We are pretty much on schedule and we have managed to talk to some interesting people including founder of wavehouse sentosa, founder of Brantology, founder of inmeetpro and founder of sgcamerarental. In this groups there are sponsors, event organizers and someone who has experience working with brands. They have given us good insights about how things are currently being done and allow us to translate it to what we are building.

I am pretty excited about what we are building. Of course there is also the element of not knowing whether it will be something people will use. It's kinda like driving in the dark, hopefully we are going in the right direction and eventually we will reach our destination. A lot of it also falls on the usability and the experience of using the product. Even the best idea could fail on execution. So I am hoping we have enough time to iterate a couple of times over the next few weeks. I especially like how well my team works together. All of us have very different strengths that compliments the weakness of others. I think that's exceptionally crucial for a well functioning team. I hope that we can bring splinkit beyond the classroom and I hope the team have the same dream to do that too.

Tuesday, October 2, 2012

Fan Page Team Dynamics case



1. Lanh said, “It would be really bad if we have a great idea but are unable to execute it successfully”. What are your views? Which is more important - the idea or the execution? Why?
 I agree with Lanh that execution is the utmost important aspect for the project. Ideas are practically worthless without the right execution. We have seen many examples of successful companies who are not the first in the market. All of these companies succeeded by executing a great product that met the needs of customers better than their competitors. Especially in the time frame of the course where there is no luxury of time, the ability to conduct extensive testing and reiterate it is limited. Thus execution matters far more than having a great polished idea.

2. What have you learnt about Facebook so far?
 I have learnt from the Facebook assignment that having a team that complements each other’s strength is extremely important in this course. Having just 4 members to complete execute the entire idea, having members of duplicated skill sets would cripple the progress. Thus having members strong in fields that the rest are weak at would ensure that the team can learn more and can move quickly. The second thing is to ensure that all members believe in the idea. Without a commitment to put effort into the development, there will be inertia to constantly seek weakness and make the application better. Having committed team members will ensure that everybody plays a part in improving the application.

3. Comment on the ideas for Another Life and Fan Gang.
Another life did not have much appeal as it was not clear who the application is targeted at and what value does it provide for the user. As mentioned in the case, the team lacked goals and objectives of why a user would play with it. The crucial game play element was lacking in the team who had no experienced game designers.

Fan Gang
Fan Gang was a new concept that is similar to fan pages that allows friends to create pages for others(doesn’t Facebook also allow that by not restricting who can set up pages? Maybe a few years ago it did not allow that?) The team segmented the target users to people who want to showcase their talent by uploading their work. In my opinion, this may be a useful tool for independent artists who are trying to make a name for them. Thus other than showing off their work, they are able to show that they have a considerable amount of people who support their work as well.


4. Should the team have changed their idea for the Final Project mid-way or stuck to their original idea? Why, or why not?
I felt that the team made the right decision to change their idea. Another Life is a game application that the team did not have the experience or capabilities to execute. Games require a very niche skill set that not every developer or business people can execute well. Whether users love the game or not depends not how well the code is written or how the marketing is done, but whether the story and visuals are engaging to keep users coming back. On the other hand, Fan Gang is a platform that users create their own content. Thus from an execution point of view, this is a much more manageable task by the team consisting of mainly coders.

5. List the major problems (obvious and non-obvious ones) in faced by the team? How could they have done differently and better?
The 2 obvious problems for the team was the lack of communication and the dwindling commitment in the project.
The 2 non obvious problems were not having a proper project management in addition to not understanding the strength and capabilities of the team and putting them into consideration when deciding on the idea.

The team should have been formed by people who could first work well with each other and had complimentary skills. This way, there would not be an issue of no communication and the members can build on the energy and passion of each individual. Having constant communication would also help the team to discover any problems known only to a single person and seek to quickly resolve it. I believe that dwindling commitment in the project is a side effect of a team that lacks communication and direction to a shared vision. To ensure members stay committed throughout the period, it is important for team members to know each other as a friend and understand their expectations for the course. Armed with the knowledge can teams better cater to each member and increase the commitment level.

Just as the coders have to pick up new languages to develop, the non-coders should pick up skills that can ensure the team moves forward. The non-coders should pick up project management skills and constantly ensure that team members is well informed of the progress and is on the right track. Additionally, it is important for each member to highlight their skill sets to the team prior to development. This will ensure that the team have a realistic view of what can be done, who needs to learn what and what cannot be done by the team. This will help by reducing the number of roadblocks that they will face in the development process.

6. What did the team do right/well?
The team did well to change their idea when they realise that they could not deliver by the given deadline.
Given the different expertise of the members, the team had split the team into 2 subgroups so that all tasks are covered by each members of the team. This helps to prevent duplicates and overlap of efforts by team members.

7. What would you do if you were Jeremy on the evening of 24th April (and the deadline for the final project submission was the next day)?
There is little that Jeremy could have done at the last day other than to reflect on what went wrong and pick up valuable lessons from this experience. If he could talk to the team and persuade the team to work on it for just 1 more day, it would help them to complete the project. Given that he could have done it throughout the half semester and the problem would have been resolved, it may not seem possible at the very last minute. He could perhaps ask the members who did not have exams the next 2 days to spend some time to finish developing the main features.

8. How would you handle a situation where one of your team members is unable to deliver on the work he/she promised because of personal problems?
This is exactly why we work in a team. By having a team, we are able to cover the time and work when some members are unable to deliver. If it is a problem that the rest of the team could help resolves, we should definitely give a helping hand. Otherwise, we should provision some individual time for this member to resolve his/her personal problems while the rest of the team continue working on the project.

9. What, in your opinion, are the key learning points from this case study?
Choosing members that you can work well with and ensure constant communications within the team members are crucial to any functioning teams. Additionally, team members should have diverse skill sets and can complement each other.





GetHelp! Case review




The interface is attractive as it can be seen that effort was put into designing icons and images to represent functions on the site. The application is very feature rich and the team made the decision to include several key features on the landing page for easy access.

The application can employ current UI trends to make the application more user friendly

1)      Single focus task
Many websites such as Google now have a clean and simple landing page where user’s attention is directed to a single focus task. GetHelp! can employ similar design element to reduce the clutter and features displayed on the page to encourage user action.

2)      Visual and pictures
Another trend startups employ is to place more emphasis on content through the use of visuals and pictures. Pinterest is a good example which uses many visuals in their products. GetHelp! can have a feature which generates a group of images for users to choose based on the keywords extracted from the task.

3)      Collapsed Content
GetHelp! highlighted 5 features that they placed on the front page. Instead of having all features accessible on 1 page, they can collapsed content and hide them into different tabs. This will allow user quick access to the menu without overcrowding the interface.

4)      Pop up box
To encourage user interaction with the site, the request for help form can be in a pop up box instead of directing users to another page. This way, users can easily return to whatever he/she is doing with minimal interruption.
                                                               
To convert the application into a mobile application, we must first determine the user behaviour of GetHelp! on mobile. In my opinion, the focus of the mobile application should allow users to post requests and receive help on the go.

Thus the first thing the team should do is to develop a high level feature list and a flow chart illustrating the different pages. This designing process will help the team by clearly drawing out the process in which users will interact with the application.

For GetHelp! the main features the application should have is the ability to submit a request, view all requests submitted and answered by user and view requests by others.

Once the flow chart has been constructed, the designers and developers can start writing the codes. Along the way, the development team should constantly test each features of the application as it rolls out to ensure that no errors or bugs are carried forward to the next features. Before launching it, team should invite external users to test ensure the application is working as promised.