CS3216 Course summary

After all, this semester has come to its end. I just realized that I’ve only travel around campus and home and no where else for the whole semester. Playing around with CS3216 for 17 weeks is both pleasure and pain.

First, I want to recap our final project. I enjoyed working with my teammates days after days to see the improvement of our products. There’s sometimes when we cracked our head to find better solutions while kept getting feedback like ‘You should do better’, ‘It’s unusable’, etc… As a programmer/coder, it’s such a pain to redo the application process again and again to check usability issues, and I can say, it’s quite clueless for me. Polishing the interface with shiny theme is not enough. We have to try to think as a middle-age office worker who doesn’t want to try new things, and will drop any applications if it’s not granny-usable proved, or if they used to other tools. I never knew that making such an simple application could be that hard. It’s not a huge problem where you can solve by coding more. It’s the kind of problem where you have to put on tons of the common sense, to create a cutting-edge that make people remember and use the application again. It seems that ‘common sense’ of the maker and ‘common sense’ of the users have a big gap, so what we can do is to try and try again to make it better with recommendations from friends and tutors.

Second, I’d like to recap what I’ve learned from CS3216. In three words: teamwork, sales and usability. Teamwork is the focus when you deal with your own people or your own teammate. Sales is the focus when you deal with your customer or your professor. Usability is the focus when you deal with your own product. That three words is what I’ve learned through projects, lectures and repeated by many awesome people we met during the course. Before this course, it was interested in making an MMORPG textgame, and seeing a trend of demanding for facebook applications developer in freelance market. So, I enrolled in this course expecting that I can learn the technique of making facebook and large scale web applications, so that this summer I can carry out some games or take some freelance jobs. However, soon after that I realized this course is not about the techniques or programming, but it’s about soft skills, possibility, dreams, and life stories of other people. Those lessons I have learned in CS3216 is invaluable and surpass any course I’ve taken in NUS.

Finally, I think this course is the start of many things. For me, it’s the start of my summer which I’m gonna be a freelance facebook developer while continue to develop whenmeetwhere, and also starting to develop a new game. This course is the turning point, which leads my interest to social network and social network applications.

Review for Case study: GetHelp!

What GetHelp! does:

– Give users a way to get help from other users as soon as possible

How it works:

– Have a page for users to post thier needs

– Have project pages for users to get responds from peers

What’s the prob now?

– The UI is not so cool, the app’s supposed to help user get quick responds from peer, therefore it should help user to quickly, accurately describe their needs.

Why the UI’s not so cool?

1. Navigation issue


– Slanted tabs are not cool, it just make user harder to read. Make the “tabs” straight for the sake of users’ eyes

– 3 styles on a single navibar are not cool at all. It needs style consistency. Overview and Recommendation pages are also very important, rather than Stats page, so their icons should also as big as others.

– There’s no way to go back to main page? It needs the HOME button on the navibar.

– The keywords are not precisely describe the meaning of pages. I.e. Overview should be simply Feeds.

2. Problems of Get help section on homepage


– Call for help button at top makes users forget about filling infomation at other sections!

– “Need quick help” and “Who do you want to ask” placed side by side makes people think they must choose to fill the left or the right. After filling forms, users then must find the Submit button, what should be after the form, rather than next to the title.

– So, it’d be much more better if they places the boxes in the following order :

First, “I need help with” box, with an “Details button”. They can submit it without filling details, or if the user wanna fill in details, the “Need quick help” box are open below, and the “Call for help” button move to below that box. Similarly, users can choose to open “Who do you want to ask” box or submit as it is

3. Problem of Overview page


– The numbers of feeds per page are too small : only 4 slots per page. This means, the last 4 of 30 will need 8 navigation step to be reached! This can be solved by reduce the size for each slot, reduce the size of the “Overview – Keep track of all that matters…” box.

Facebook application review: Elven Blood

I choose this application to review, because I was a fan of RPG games, and played some textbased RPG games before.

First, the most important things the presenting team said about this application are:

1. This game is a niche application, caters to Fantasy/RPG crowd. And, they copied this game to caters to other groups of users.

2. This game is a viral game, and get money from advertisements. And, they built platforms for advertisers.

3. It faces drastic user plunge, as the game has no development for top users.

My comments

This game is a niche application, caters to Fantasy/RPG crowd.

Having 1,000,000 users after two months, this is a relatively successful game. I agree with the presenting group that this game caters to RPG players. It has what it needs to make a successful start: Quest, Items, Exp and Levels, a Gameworld, plus a Storyline. This game shows there’s a lot of RPG gamers out there on Facebook, and it successfully gets them to play.

The lesson here is :  you don’t need to make something mainstream that everyone needs, but try to cater to a special potential groups and make something they really like. Facebook has more than 100,000,000 users, so, you are already successful if you can get 1-2% of them to use your application. Maybe only 1 or 2 persons out of 100 play RPG games, but if you get all of those RPG gamers, you’re already rich.

This game is a viral game, and get money from advertisements. And, they built platforms for advertisers.

What I think important here is that the makers of this game have built platforms for facebook advertisers, rather than rely on other advertising agents.

It faces drastic user plunge, as the game has no development for top users.

There’s a question. Should I work more to satisfy those top users, or just simply ignore them and start a new business circle, i.e., a duplicated game with different story? In my opinion, it’s hard and bitter, to drop a large amount of users and move on another game. MMORPG games attract gamers mainly because of the rewards (exp or items) after they do quests, with a good storyline and gameworld as a sidekick. MMORPG gamers are addictive partly because of the ladder board and its competitiveness. Once the top users are gone, other gamers will also be gone.

The lesson here is : pay effort to develope the storyline and the gameworld, make a never ending game.

Microsoft Talk – a Show about Possibilities and Future

Last Monday, I’ve attended Microsoft Talk, a show with three representatives from Microsoft talked about the Possibilities and Future.

The first man, Ian Tan, talked about Games, Xbox, XNA. To sum up the content first, he predicted the future of the main games distribution channel will be the Internet, which supportted by the future network with capability of transferring a full DVD games in 1-2 minutes. Xbox Live will have an exponential growth of the number of homebrew games, as game developers should have recognized this is an economical and very short way to get their games published, as they don’t have to think about Fund, Publisher, or Marketing Tools any more. This is also a great chance in this recession when people can spend more time playing games instead of working. Along with the interesting content, what I really like about his presentation (and what I feel impressed the most of this Microsoft Talk) is how he put on a show. He’s a really good storyteller, and it’s really a cool Show. To demonstrate his ideas, he used an Xbox 360, and the slides are more visual rather than verbal. He actually used Xbox Live channels rather than putting numbers or demo screenshots on a slide. He knows how to introduce (or advertise?) and inspire the future game developers to participate in Xbox Live as a game makers.

The second show is about Microsoft UX Technologies: WPF, Silverlight, and Surface. The show is demonstrated with several slides (that I feel good but not as cool as the first show) and really cool demo WPF applications, amazing Silverlight sites, and a video of future Surface. The demo of WPF applications make me think again about Microsoft applications, which has been always been addressed as “very ugly and bad interface” or can’t be compared with Mac. With WPF technologies integrated with .NET framework, it’s such a awesome combo, as applications powered with WPF will be really innovative and flashy. Silverlight is also a good framework, and it may power web applications to the level of desktop apps.

The last one is about Imagine Cup. The representative from Microsoft came to the show with ethusiasm and inspiration. She introduced about Imagine Cup and past year participants and winners. After all, Imagine Cup is an event where youth, ethusiasm, and hope gathered.

First lecture of CS3216 and workshop

Well, this’ll be a tech blog later. Now it’s for CS3216, the NUS modules that teaches requires allows you to make FACEBOOK and Microsoft Silverlight (WPF) apps.

In the first lecture, what I like the most is the Show-n-tell session. I like Hui Hui’s laser guns a lot =) I can’t imagine that other people ‘d bring water bottle (? -> and drinks blows ), meatballs, candy, laser guns,  abstract pictures, and a lot of videos.

In the first lecture, there’s no techies stuff, just administrator and schedules. It’d be very soon to the deadlines. What’d need to be done is not to miss deadlines die. The better part is the “Life of a facebook app” note is very well written, so when I read it I found finally it’s not hard to make a Facebook app. Success of Facebook apps lies in the coder maker’s creativity, and social connecting power of the app.

About the workshop, I think it’d be boring if you’ve got some knowledge about unix or php/mysql. The best part is that, uhmm, I love the food =) , the cheatsheet’s good, and Chris is very approachable and he sweared a lot.