Skip to main content

Posts

What it takes to create a news classification app?

Fooyo recently received a request to make a news classification app. It sounds quite challenging and interesting. We feel excited to solve hard problems. The request is a bit too urgent, but we managed to deliver it with good feedbacks from the client. The requests is to crawl news data from various news sources, delete the duplications, classify the news into different categories and then display them on a mobile app. It sounds quite straightforward, however, each module actually involves quite hard components that need deep knowledge/understanding to solve them. In summary there are four components: 1. A web news crawler 2. A duplication deletion mechanism 3. A news classification mechanism 4. A mobile app which interacts with the server A web crawler is used to crawl news list data and the corresponding page links. The web contents of the page links are then saved into the server. There are quite a few good open sourced crawler out there, e.g., scrapy .  Some...

Fooyo

I officially quitted my job in ViSenze in Feb 2015 to chase my little dream -- to create a lean tech startup that can make the world a better place. In fact, my cofounders and I started working together in the early 2013 where we developed  an iPad clock game which solves a small problem in a fun way.  Ever since then, we have never stopped our passions in making products that can benefit people. Though we worked on many projects in different teams in the past two years, we still cannot forget the most memorable days when we worked together in the midnight in School of Computing and go for supper together. That was the best time in my life so far. On a usual day in April 2014, I proposed the idea to make a small and beautiful tech studio that makes elegant apps/products.  A lot of feedbacks came. Most feedbacks are just comments without any actionable suggestions. Only one friend, Rick(one of the cofounders) who was exchanging in Switzerland(ETH) saw my posts and th...

New Year Resolution

A lot of things happened in the year 2014.  A lot of people to thank to, also a lot of people to apologise to... Thanks to ViSenze who gives me various chances to learn different skills. I worked out my first java project with highly professional team members.  I learnt how to translate business requirements into user cases, how to initiate execution plans and prioritise, how to design a system in a more elegant manner, how to code java properly, Spring, Akka, Unit test, Angular.js, etc.  I worked out the first version of iOS sdk based on the Java sdk and Faceplusplus iOS sdk .  I worked out a demo site based on the PHP sdk and fixed a few bugs in the PHP sdk. I learnt to be more careful implementing front end CSS and HTML and be a more detailed person. Thanks to all the helpful people in the company who would like to share their knowledge and expertise, especially to Guangda who helped point out my problems straightforwardly no matter how naughty I am, to ...

Craftsmanship

It was a busy month, all work no play... more about polishing, both code and UI, to make a better product. 1. Code Polishing In the current Java Spring project, there are a few things worth mentioning. 1. Service layer for MVC. My previous projects are mostly architected under MVC pattern. There is nothing wrong about that. However, when the logic gets more complexed, handling all the logic in the controller layer would not be as clean and efficient. Another layer named Service for better data access and logic control is used in the our project. http://stackoverflow.com/questions/5702391/mvcs-model-view-controller-service The controller would not be handling too many logics, instead, it only handles routing and  parameter passing. Most logics will be handled in the service layer. 2. Exception handling vs error codes In the beginning, I didn’t do any exception handling in the service layer, neither do I create many exception handlers in the controller la...

Restart

It's been one month since I started working in the new company. The overall experience is very good, quite a lot to learn and practice, except that I wasn't self-motivated enough to show lots of passions. I kept a weekly journal on Google docs to record some company-related stuffs. Some contents are operational/business related and can be sensitive to the potential competitors, thus they are saved as private journals. Techinally, there are quite a few good gains to note down. 1.I started to use unit testing in the project development. It turns out to be a very good practice to keep the codes a good standard.  2.One colleague and I discussed a sub part of the system and wrote the design document done before coding, which turns out to be a very cost efficient approach. 3.We used pivotal tracker to divide big projects into small parts. That is pretty useful for project management. I used trello in the past, however not as efficient for intensive collaborative working. 4. I desi...

Kilimanjaro

I decided to take some adventures before starting a new job. Around a year ago, I read a sharing from Facebook about the advantages of extreme sports. I found it quite convincing and worth a try. Last winter holiday, my friend, Qiyue,Jingping and two other girls went for sky driving and high jumping. I guess that a pretty good opportunity to start. Unfortunately, I was too busy with the ReadPeer project to go for a two weeks' trip. This summer, they are graduating and I'm changing a job, thus I decide to spend two weeks experiencing something adventurous with them. The plan is to climb the Kilimanjaro mountain. Since the safari is also nearby, we'll do that as well. Another friend who has climbed a 4000+ camp in Nepal together with Qiyue found our plan cool, thus he also decided to join us for the Kilimanjaro trip. Before climbing, we must have researched about the difficulty and feasibility. We knew that it is doable even for beginners like me. However, it takes courages...

Cut the Cross Down

Many things happened in the past few weeks, but I didn't record them in a consistent manner. It's like I'm carrying less burden than before, but the consequences could be pretty bad in the long run. Accomplishes:  1. Finished the book "You can draw in 30 days" and managed to draw sophisticated 3D objects. 2. Finished reading the first DSLR photographing book and practised three weekends on  a second-hand Canon D7 camera. Learn everything from a scratch from Zhixing. Attended my friend, Jingping's harmonica concert. 3. Launched our Clockie app V1.0. Finished the V1.1 debugging and modification. On going for the V1.2. We consider this app to be our first experiment on how to make a real product. Besides UI and features, we are going to do some experiments on the business side as well, for instance the free-premium business model. However, since there are small issues with the current version, we still ch...