Wednesday, 19 February 2014


I attended the Facebook Hackathon last Saturday with Zenan and Qiyue. It was an awesome experience. People there are really geeky and some teams are technically very strong. Unlike other hackathons I attended which are somewhat business oriented, this hackathon consists of only developers. No business models need to get examined. I guess that's the reason why it was so geeky and fun.

The problem we want to solve is to help couples living long distances to better communicate with each other. It is painful for them to stick with each other while they cannot meet face to face very often. There are basically two needs:1. to have a unique private messaging channel where only two of them are in each other's contact. have a pair diary space that keeps track of their memorable conversations from the instant messaging channel. Zenan is really awesome in UX design and implementation. Qiyue is also very good. We managed to build the pair diary app with Pods, JSMessageViewController and Parse. Zenan finished the design and storyboard very early while Qiyue and I splited the implementation tasks into the chat+diary part and the login+pairing part. I am in charge of the chat+diary part. At the beginning, I picked a traditional tableview approach to develop the chat room which turned out to be very troublesome Later, we used JSMessageViewController which is really neat. The process itself takes too much time which slowed down our overall progress to some extent.  That's mainly due to my fault in not taking Zenan's suggestion of using JSMessageViewController earlier. Thankfully, we made the instance messaging working around the midnight and started to add on the pair diary summary feature as well as the social login and pairing feature. Around 1~2hours before the hackathon finishes, we managed to get the pair diary part working which is a big celebration.

In the end, we've made a prototype which is more or less the same as the original design by Zenan with a few unnoticeable bugs. The demo and presentation is pretty good with a lot of claps and praises. It is indeed a pretty promising prototype. We can definitely get a good prize in a normal hackathon. However, the challenge is that the other hacker teams are as awesome as us. Some are even more amazing. In the end, a team with creative UX web design standed out in the first place while two gaming teams won the second and third. In fact, I don't think the second prize team is that awesome inventing QR code for multi player access. The third prize team is the legendary NUS CS code monkeys while I guess they deserve a better rank. The team impressed me most is Xiangxin, Xiangyun,Ziwei and Eugene's kitty team though they didn't win any prize. In fact, the reason why Xiangyun attended the hackathon is to make an auto animal food monitoring machine for the lonely cat in SOC. That is so loving. One makes an auto food feeding machine with camera, wifi, infrared ray detecter simply because he finds the cat lonely and hungry asking for food around his lab. I am deeply touched.

After the hackathon, I becomes more energetic in making products. I do coding more quickly than usual. I also have a better sense of UX/UI taste learned from Zenan.

For the readpeer project, I have taken the suggestion from the Lean UX book to collect important feedbacks from reliable people every Thursday. I also redesigned the authentication method for the readpeer API while the Restful API module and OAuth2 module in Drupal rely too much on another very heavy module. In Drupal, most method in the modules are public to other modules which can take a lot of time searching for the right methods. The routing approach in Drupal also heavily relies on the hook menu settings in each module, which can also be slower than simply routing via the web server settings (Please correct me if my understandings are wrong). In terms of flexibility and reusablility, Drupal is definitely not an optimal framework. I heard something about meta programming with ruby, which sounds pretty cool. However, UX, UI, usability becomes of higher priority than the frameworks now.

For health, I haven't eaten meat for 3 weeks including the Chinese New Year. However, when the antie downstairs invited me on the Lanten Festival making meat dishes for a whole afternoon, I felt it impolite to not take a bite. However, I immediately felt like I'm gaining weight after eating the meat. Next time, I shall be more determined even facing a lot of temptations.

Keep learning and stay healthy!

Wednesday, 12 February 2014


I didn't intend to fly back home for this Chinese New Year when there are quite a lot of stuffs remaining to be done for the ReadPeer project. However, I eventually ordered the return ticket(refundable for SM2/SM3 student to fly home after graduation)in the last minute after several days' consideration.

Unfortunately, I missed the flight on Jan 29th after fixed a bug on the website. Then I changed the flight to Jan 30th and stayed in Zhixing's place for a night and fixed some more problems in the previous iOS project. Gratefully, I returned home safely in the last hour of the CNY eve.

It is quite uncomfortable to do nothing at home while I am used to work many hours a day. The first few days are more about visiting relatives and have lunch/dinner. During these days, it was more about observing. Quite a number of changes happen this year in China which affect the normal citizens.

1. Civil servants used to be one of the most desirable jobs in China. However, this year's anti-corruption activity leaded by Chairman Xi makes civil servants' life not as good. Many leaders have been dismissed and the civil servants no longer receive yearly bonus, let alone gifts. However, there are still cases where the leaders assign other people as the CEO and make money for them without affairing directly to the business. I happened to visit one brother whose boss is a village leader having a Rolls-Royce worth 10 million rmb.

2. The industry is transforming. The city I lived in is named as the China Textile City which is world's largest textile market place. Most companies are built around that industry: textile,textile machine,printing,clothing,etc. Now the traditional textile making industry is losing competitive advantages. The labor-intensive companies cannot attract cheap labors from west China to work for them when the salary is not so much higher than other cities. The printing companies even live harder because the environment agencies are taking actions to punish the pollution. However, some companies are doing pretty well by improving the quality of the product and switching to a more skill-intensive products, such as curtains. For the sales and marketing, international trading is getting more important for individual salers. However, their clients still come from normal channels such as personal connection, referencing,etc. The internet is not really helping that much, partly because the industry is still mainly maintained by the old generation whose main connection tool is cellphone. The young generation is trying more tools such as email and aliexpress. The company bosses cannot rely on manufactoring industry to make a living (indeed, most companies lose money). They transfer to real estate which might be full of bubbles.

3.WeChat is getting huge among the young generation.

4.The financial industry is changing. In some sense, China is leading the world in tranforming the financial industry. With the introduce of the innovative financial product Yu E Bao 余额宝 by Alipay, IT is again making great contributions to influence the world. Compared to 3-5% interest rate in a normal fund product, Yu E Bao has an interest rate of 6-7% which gets rid of transaction cost in banks. People now prefer to save money here instead of banks. In fact, I helped my parents save most their money into the Yu E Bao account. It is predictable that the banks will get less money to lend to the real estate investors and the banking industry can probably get healthier.

I visited my grandparents for two days where no internet is available. During those two days, I finished reading the Lean UX and wrote some lyrics. I realize that design thinking is so important. I really need to learn a lot from Lean UX teams to make productive projects. Stucking in the current team may not be a wise choice. Prof. Tung told me that the project funding is running out around end of April. I may need to find another job after finishing the mobile apps. Life is full of uncertainties. I've got to prepare for the changes.