Multimedia Index Computing, Two-step processing, Multi-step processing
Database Hardware, CUDA, GPL, SSD
Assignment 1 – 100/100
Assignment 2 – 100/100
Midterm – 82/100
Individual Project – Studied two research papers on OLTP Database Partitioning Tools: Horiculture and JECB and wrote a paper to show what I actually learnt. Grade: 95/100
Paper was consisted of Introduction, Problem Statement, Description on the concepts of the tools, Analysis and Comparison, and finally Conclusion.
To show my understanding of both papers, I created my own example of database schema, stored procedures, foreign key constraints and workload trace and applied it throughout all the sections of the paper
Horiculture used branch and bound algorithm to prune the size of search space to find the partition solution that yield the lowest cost. A partition solution may consist of horizontal partitioning of replicated table(s), read-only table(s), secondary index(es) and stored procedure routing parameter(s).
JECB used foreign key relationships to join tables by columns to form join paths and join trees. Then, the joined columns became the partition attributes of the tables. Compatible join attributes were merged and the finer one was used to construct join paths and join trees respectively. To avoid the explosion of search space, compatible join paths and join trees were merged to reduce the number of partition solutions that were constructed. A partition solution was composed of a join tree and and an independent function. An optimal solution was a partition solution where the independent function returned the lowest distributed cost.
1) Complete Year 1 semester 2 and 3, and Year 2 Semester 1 despite heavy course work load
2) Attend my second Hong Kong Open Source Conference held at HKSTP
3) Attend inaugural PyCon HK 2015 Day 1 and 2 held at Cyberport
4) Join events organized by Open Source Hong Kong, Codeaholics, Open Innovation Lab and Hong Kong Node JS respectively
5) Continuously to learn MEAN stack. Firebase and open source tools (Grunt, Gulp, Bower, Yeoman)
7) Good health
8) Build a toy project that tracks down my event attendance; something that actually benefits me.
9) Met a PolyU classmate who shares the passion of web technology and accept my invitation to attend meetup.
10) Completed my only MOOC course in Udacity, Web tools and automation.
Goals next year :
1) Graduate next year
2) Go on my first vacation in three years
3) Read about HTML5 and CSS3 and practice Angular 1.x/2
4) Attend HKOSC 2016 (?), PyCon HK 2016 (?) and definitely TW JS Conf 2016 (Buy ticket early)
5) Try to speak clearly and communicate effectively with family, friends and colleagues
6) Enrol and finish at least 1 MOOC course. Udacity has many free courses that aim at web developers and Android developers.
1) Programming Cloud Services for Android Handheld Systems: Verified Certificated issued with final grade 99.5. Verified Certificate
2) Usable Security: Watched week 3 video lectures and submitted Week 3 quiz.
3) Mining Massive Datasets: Enrolled into the course late. I have downloaded week 1 and 2 videos but too busy with Poly U homework projects to begin watching them.
4) COMP5111 – Database Management:
Set up structure of PHP project
Implement student login and logout functionality
Implement change password function to fulfill update requirement
Add skeleton PHP code to return dummy student history and render the results student page using JQuery Ajax call
5) COMP5122 – E-Commerce fundamental and development:
Use Maven 3 to create a Spring MVC project
Deploy the project to tomcat 6 server in Poly U and it can run successfully
6) Order Mama Demo in collaboration with Roger Tang
Can retrieve Facebook posts and show them in endless list adapter
Can display number of likes and comment count for a specific post
Can retrieve Facebook comments and show them in endless list adapter
1) Programming Cloud Services for Android Handheld Systems: Submitted Quiz 6 and Assignment 2 in the past Sunday. The new assignment looked challenging at first after reading the README file and going through the source codes. Fortunately, code examples provided oAuth2 package that could directly use in the Gradle project. Furthermore, no effort to write CRUD methods to retrieve records from database because Spring Framework’s CRUDRespository class generates them automatically. My solution was create a Spring Controller to expose methods to receive HTTP requests from users. Then, the requests were delegated to CRUDRespository subclass to retrieve data and return it to users. Very simple!!!!
2) Start my third AngularJS project that adds photo albums to store pictures taken in Open source Workshops and local meetup groups. This time, the project is bootstrap by Yeoman and Gulp because Matthew told me Gulp is better build system than Grunt. After using angular-gulp-generator to generate the skeleton project, I have to agree with his assessment.
1) Reproducible Research: Enroll Signature Track to earn my third Verified Certificate in Data Science Specialization.
2) Pattern-Oriented Software Architectures: Programming Mobile Services for Android Handheld Systems: Earn my second Verified Certificate in Mobile Cloud Computing with Android Specialization.
3) Advanced Competitive Strategy: Completed all 7 quizzes and open book final examination.
4) Programming Cloud Services for Android Handheld Systems: Submitted 5 quizzes and assignment 1. Assignment 2 was released but I cannot start until I watch all the videos of week 6. This course uses Spring framework to implement cloud services and instructor has covered Spring controller, Spring repository, Spring security, Spring data and Spring Rest.
5) Deploy my second AngularJS size project to http://quiet-chamber-1998:herokuapp.com.
Show custom markers of pick-up locations on Google Map.
Call Google Map Direction Service to render route.
Allow user to input unlimited addresses to draw route to Hong Kong Science Park
Define simple Restful API in NodeJS + Express Router
Use Yeoman and Grunt to bootstrap AngularJS project.