Week of September 2 to 8, 2013


1) Dropped Microeconomics Principles due to heavy schedule.
2) Linear and Integer Programming, Metadata: Organizing and Discovering Information and Introduction to Recommender Systems start this week. Video lectures are published in course websites but I haven’t had time to watch them yet.
3) Linear and Integer Programming Course: Completed Assignment 1 and Assignment 2 tonight (2013-09-04)
4) MetaData: Completed Homework 1 and scored 15/15 on my third attempt. (2013-09-05)
5) Recommender System: Watched videos of module 1

MongoDB University:

6) M102 Final Exam is graded and final mark is calculated. My final exam mark is 11 out of 12 and final course grade is 96%, good for distinction. Now, I patiently wait for course survey and invitation to LinkedIn M102 Alumi Group.
7) Completed M101J Homework 6 (Application Engineering). They give us Homework 6 of M101P and even the validation script is Python.
8) Completed M101JS Homework 4 (Performance). HW4 of M101P is reused in this course and I am a little disappointed because I expect different questions from the instructor and tutor.


9) Continue to work on my simple Android Application.
– Add 3 tabs and each tab is consisted of a list view and list view item is customized to display image view and text view.
– Add intent to call my mobile phone
– Add intent to send email to my Gmail account.

Week of August 25 to 31, 2013


1) All summer courses ended. Completed two courses and dropped three.
2) Signed up for Principles of Reactive Programming, Programming Handheld Systems with Android and Microeconomics Principles.

MongoDB University:

3) 10gen Education renamed to MongoDB University.
4) Completed M102 Final Exam. It is consisted of eleven questions and took me two days to complete. Exam result will be released on next Tuesday.
5) Completed M101J Homework 5 (Aggregation Framework). It is same as Homework 5 of M101P.
6) Completed M101JS Homework 3 (Implement add new post and new comment functionality). The asynchronous callback concept is unnatural to me to grasp right now. Give me several weeks and I should be comfortable of passing callback function to nodeJS function.


7) Begin Lesson 2 of CS253 Web Development. This week covers HTML controls, Http Request and Response that I have already learnt since 2006. However, Steve still teaches many new things that I did not know beforehand. My objective this weekend is to use Python and Webapp2 framework to write html pages and have them run in local google app engine.


8) Retake lesson 4 of Certificate in Google Android Application Development for Marketing Managers. Able to invoke Google Map API to show my home in Google Map in Marketing Jar.


9) Successfully write an Android Application to display Google Map. It should not be difficult given my Java background. Localize the application to English, Traditional Chinese and Simplified Chinese.

Week of August 19 to 25, 2013

1) Completed Coding Matrix Week 7 lab and Homework. Done with the course and wait for the issuance of the certificate.

2) Completed M102 Homework 6. Final Exam will be held next week.
3) Completed M101J Homework 4. Midway through the course.
4) Completed M101JS Homework 2. I am new to Node JS and need to refer to lesson examples to write Node JS programs to perform CRUD operation on MongoDB.
5) Upgrade to MongoDB 2.4.6 in local machine

1) Completed Quiz 1. 5 out of 7, decent score.
2) Did not submit Homework 1. Too busy currently and have to drop the course. I downloaded lecture videos of week 2 and 3 and will watch them when I have time.

1) No progress so far. Will watch videos of lecture 2 next week. The course is self-paced, so no pressure to meet deadline.

1) Learning how to write JAX-RS web service to retrieve JPA entities from H2 database.
2) Get an overview of Twitter Bootstrap and Knockout JS.

Week of August 12 to 18, 2013


1) Completed Coursera: Competitive Strategy. Waiting for Statement of Accomplishment.
2) Received Coursera Machine Learning: Statement of Accomplishment.
3) Coursera Coding Matrix: Week 6 videos. Completed two labs and one homework. Almost done with the course.
4) Coursera Maps and the Geospatial Revolution: Missed Quiz 4. Will drop it because I am taking too many courses at the same time.

5) Received 10gen M101P: Certificate of Completion.
6) Completed M102 Homework 5. Two more weeks to go.
7) Completed M101J Homework 3. Midway through the course.
8) M101JS started on August 12, 2013 and completed Homework 1.

9) CS-169.2x Software as a Service started on August 13. (Falling behind, no time to watch videos)

My First Android Widget

Last night, I followed AppWidget tutorial on the Internet and wrote my first analog clock app widget in Android. Even though I was extremely exhausted, I did not give up and finally had it installed on my phone. When I saw the minute hand moved on the home screen for the first time, the sense of satisfaction was priceless. Hopefully, I can build a few more app widgets based on this experience.

Completed M101P: MongoDB for Developers

Final exam was submitted on past Thursday and I am waiting for the result to come out next week.  According to the course website, the deadline of the exam is August 6, 9:00 AM HK time; it will be graded by autograder and posted the result in the progress tab of student portal.

I must achieve at least 65% to earn the certificate and it is no easy task. It is because the the weight of the exam is very high, namely 50%. If I underachieve in the final exam, my dream of attaining 10gen certificate will be burst.

The homework average is 42 out of 50; it has gone down a bit because I forgot to hand in assignments of week 1 and week 2. The exam is consisted of 10 questions, so I need to get at least 5 correct answers to achieve my goal.

I am skeptical because there are 3 questions I don’t know the answer. Even though I visit course discussion forum to look for hints and advice, nothing helpful has turned up.  The 5 hand-on questions are straightforward but I have no way of verifying my answers.  The JSON datasets used in the exam are so large that they make checking results extremely time consuming.

My fate rests on the final exam autograder. When next Tuesday arrives, I will know if I pass the course of not. Wish me luck!!!!


Mass Open Online Course links

I have taken few free online courses on these sites and I find them very useful in my development of Computer Science knowledge and web development skills.

If you are a passionate software developer like me, you would find a bunch of courses that interest you. Then, your real issue is to juggle the time slots in your schedule to fit in all of them. Sounds like a discrete optimization problem to me (still thinking in terms of Computer Science).



10gen Education


Useful Android Links

Taken from Roger Tang’s facebook post, I have put the useful Android links here:

台灣中文書的 Powerpoint 筆記

MKYong Tutorials, 又簡單又清楚




Java2S , 好多不同例子程式碼, 但係無解說

Tony’s Blog
Tony’s Blog

Bruce Cooper Sitepoint Blog
Bruce Cooper’s Technology Blog

Completed Coursera Machine Learning Course

Finally completed all programming exercises and review questions of Machine Learning Course taught by Prof. Andrew Ng of Stanford University

I am not an official Stanford student so I am grateful that I could receive Stanford Education in the past three months for free. If Stanford offers advanced Machine Learning or Machine Learning II, I will clear my schedule and enroll into it.

Link: Machine Learning

I will write another post after receiving a signed statement of accomplishment from Prof. Ng.

A good start in the second last week of July.

Thanks Professor Ng.