Wednesday 30 December 2015

Thursday 24 December 2015

Online Course: Introduction to Protractor

Completed this course to learn how to use protractor for end-to-end testing of web app whose frontend uses angularjs. Works with selenium, and very good for integration and user testing.

Link: https://app.pluralsight.com/library/courses/protractor-introduction/table-of-contents

Saturday 19 December 2015

Sunday 13 September 2015

Thursday 30 July 2015

Online Course: Android Photo and Video Programming

This is very easy-to-follow course on how to programming Android photo and video capture. The programming now looks much easier with this course compared to last time when i need to read books to do android video and photo capture programming for Android 2.2 and 2.3.

Link: http://www.pluralsight.com/courses/android-photo-video-programming

Wednesday 29 July 2015

Online Course: Improving User Interface Design with Android Fragments

Part of the course I took to update my knowledge on Android. Very easy-to-follow course on how to use fragment. The fragment turns out be a great solution that solve many of the uncomfortable design problems which i previously encountered in which i used Activity only to work with Android version 2.3 and below.

Link: http://www.pluralsight.com/courses/android-fragments

Online Course: Exploring Android Studio

Nice introductory course on android studio for someone who want to migrate from Eclipse for Android development (like me :p)

http://www.pluralsight.com/courses/exploring-android-studio

Sunday 28 June 2015

Online Course: Introduction to Node.js

Finally have a look at the node.js, very impressive. the behavior driven testing with mocha and should.js is beautiful. the integration work with socket.io is actually some feature i have been looking for. and the process fork/spawn/exec is an elegant solution for start another process within the node.js

Link: http://www.pluralsight.com/courses/node-intro

Saturday 20 June 2015

Online Course: Introduction to OpenStack

Very nice course for the introduction of openstack, although a bit general and no enough details on specific projects such as keystone, glance, nova, cinder, heat, ceilometer, etc (understandable as it is an introductory course and openstack is quite huge).

Link: Introduction to OpenStack

Tuesday 26 May 2015

Online Course: Getting Started with Spring Data JPA

Going through this course on spring data jpa today, did not realise how powerful spring data jpa is and how much less work i could have saved in the past if only i took this course earlier. The query DSL (query methods with keywords) are fantastic, the paging and sorting as well as the auditing are all something which have troubled me when using spring jpa in the past. But the course makes it very easy to understand.

Link: http://www.pluralsight.com/courses/spring-data-jpa-getting-started

Wednesday 20 May 2015

Online Course: Introduction to The .NET BackgroundWorker Component

Just completes this course. Not much learned that i did not know about background worker before starting the course, actually I find remarkable resemlance to the ways i used background worker when Jeremy is describing his way of using background worker in in MVVM, and it seems that the TPL way described in the course is not very safe for parallel processing (anyway that is not his focus which is more of async call of long process from ui views). However, I do like that his comparison in the implementation of TPL for async call similar to background worker. Also the course gives me some new thought on using background worker event properties such as .Result, .Error and .Cancelled.

Link: http://www.pluralsight.com/courses/dotnet-backgroundworker-component-introduction

Online Course: Spring Security Fundamental

Just completes this course. Very nice introductory course for spring security, talks about role and permission based authentication and authorization as well as various login mechanism (default, http-basics, form-login) and other cool features such as permission evaluator, ldap server, https channels.

Link: http://www.pluralsight.com/courses/spring-security-fundamentals

Notes: For some reasons the <form-login> section described in the course does not work with the latest spring security 4.0.1.RELEASE:

Firstly for the example in the course to work with spring security 4.0.1.RELEASE, use-expressions="false" must be included in the <http auto-config="true"> in the security-config.xml for the <intercept-url> which does not use expressions (it seems that spring security 4.0.1.RELEASE <http auto-config="true"> has default use-expressions="true")

Secondly, j_spring_security_check does not work with spring security 4.0.1. RELEASE, it always bounced back to the same login pages and j_spring_security_check issues 302 error messages, furthermore, the latest spring security has the csrf default to true in the <http>.

The examples in the course worked after I switch to spring security 3.2.6.RELEASE instead.

Monday 18 May 2015

Online Course: Spring with JPA and Hibernate

Just completed the exercise for this course, very good and easy-to-understand on how to persist data in spring framework using hibernate, jpa and jdbc mysql.

Link: http://www.pluralsight.com/courses/spring-jpa-hibernate

Sunday 17 May 2015

Sunday 10 May 2015

Online Course: Spring Fundamental

Go through this course to refresh my understanding of spring's fundamental concepts such as java or xml configuration, annotation, autowire, scope, IoC and DI. Very efficient way of getting a quick look as picking up and reading a spring book always made me dose off.

Link: http://www.pluralsight.com/courses/spring-fundamentals

Wednesday 6 May 2015

Online Course: What's New in Java 8

Just finish this course and get acquanted with a number of cool features in Java 8 such as stream (map/filter/reduce) with lambda functions and some very welcoming features now built into IO, collections, date time, etc.

Link: http://www.pluralsight.com/courses/java-8-whats-new

Monday 4 May 2015

Generalized linear model

Thanks to this notes at link: http://bwlewis.github.io/GLM/, I was finally able to implements my own version of generalized linear model correctly in C# using the iteratively reweighted least square and its QR and SVD Netwon variant.

Sunday 3 May 2015

Numerical Methods for Solving Large Scale Eigenvalue Problems

This is more advanced level content,  which i learned in order to implement the QR algorithm that perform eigenvector decomposition and singular value decomposition

Link: http://people.inf.ethz.ch/arbenz/ewp/Lnotes/chapter3.pdf

Saturday 2 May 2015

Applied Numerical Computing

This is a freely downloadable ebook by Professor L. Vandenberghe. Very nice book for developers interested in implementing linear algebra algorithms. I primarily used to book for implementing my routines on QR factorization and Cholesky factorization to solve linear equations, least square problems data fitting, least-norm problem, and matrix inversion. But the book contains much more such as linear and nonlinear optimization

Link: http://www.seas.ucla.edu/~vandenbe/ee103.html

Online Course: Coding the Matrix: Linear Algebra through Computer Science

It took me twice to go through the lectures in this course to finally figure out why and how to obtain the orthogonal basis for the null space of a matrix and perform QR factorization to solve linear equations. But finally I was able to implement my own version of a linear algebra library for the first time which includes gaussian elimination, QR factorization, orthogonalization, determinant computation, backward substitution and various ways to obtain the basis for vector space, as well as some methods in least square regression. The examples given in the lecture are particularly practical and eye-opening on what linear algebra can do in image processing and security such as GF(2)

Link: https://www.coursera.org/course/matrix

Wednesday 29 April 2015

Test-Driven Infrastructure with Chef

Did not read this book in details, basically going through the first 4 chapters and briefly glanced through the rest of the chapter. My primary objective is to compare Chef's features with Puppet's. Maybe because i learned Puppet first, i found that Puppet's syntax is easier to memorize, but the cookbook and recipe features of Chef is very useful for a sysadmin beginning his / her career, and mixing with Ruby code is also a welcome feature. Did not really read the TDD and BDD that book is trying to focus with Chef, maybe some other days when got more time can revisit this.

Link: http://shop.oreilly.com/product/0636920030973.do


Online Course: Introduction to 2D Game Programming with XNA

This course is very similar to the MonoGame course I read, albeit providing a bit more on how to manipulate in the game such as sprite sheet and animation as well as a more feature game (instead of the simple pong game in MonoGame course), but since sprite sheet concept and other stuffs taught in the course, i have already used these features and logics in my own MonoGame app before being taught there, there is really no much to learn in this course for me.

Link: http://www.pluralsight.com/courses/xna

Puppet 3 Beginner's Guide

Very easy to follow book on Puppet, I managed to learns some key concepts of puppet such as package (install software package and versioning), service (manage services), file (check file exists and create files, etc), exec (running commands), user (create user and user access control and ssl), template (create template files in erb files for adaptive configuration), cron (scheduling), class, modules, nodes and import (puppet files structuring) and the very nice Facter tool from Puppet

Link: https://www.packtpub.com/networking-and-servers/puppet-3-beginner%E2%80%99s-guide

Online Course: Raspberry Pi for Developers

I was recently taking this online course to refresh my knowledge on Raspberry Pi and Python, the course is nice albeit focusing on the simple and basic stuff (actually this was what exactly i looked for in taking the course). While course is simple, it talks about how to GUI remote access the raspbian os running in the raspberry pi using tightvncserver (actually just linux standard GUI remote access), how to install wiringPi, how to work with RPi.GPIO to control the GPIO pins on the raspberry pi, and other nice tips such as audio playing using pyaudo and wave (needs to have external audio card with raspberry pi), how to set up nginx server and node.js (standard just like most set up on linux)

Link: http://www.pluralsight.com/courses/raspberry-pi-for-developers

Tuesday 28 April 2015

Online Course: Cross Platform Game Development with MonoGame

Pick up this course because I need to quickly write a simple simulator of some animals doing crowd simulation using C# that will run in mobile, Unity 3D seems to be the option but its 2D features seems to have a steeper learning curve than MonoGame, therefore i picked the MonoGame (open source alternative to XNA that supports cross platform including mobiles). The course is quite simple, in fact the pong game used as demo in the course is next to nothing compared to the kind of games I built in the past, but it turns out to be quite a pleasure to learn MonoGame by watching the course.

Link: http://www.pluralsight.com/courses/monogame

Monday 27 April 2015

Online Course: Unit Testing In Java With JUnit

Just completes this course to upgrade my knowledge in JUnit, very nice and easy to follow, apart from learning about the advanced features in JUnit just as matchers, theory, suite, categories, rule, parameterized test, the course enriches me by providing information on how to using JUnit with Ant, maven, as well as code coverage tools such as ECLEmma (directly installed by eclipse) and Cobertura (when used with CI tool such as jenkins), Continuous testing tool such as infinitest, mockup tool such as jMock, (Not sure whether it is the google voice issue, though, the example given for google voice as dependency in unit testing seems to get into problem producing error message such as "https://www.google.com/voice/b/0/settings/tab/phones - Unauthorized") as well as Selenium for web test automation)

link: http://www.pluralsight.com/courses/java-unit-testing-junit

Sunday 26 April 2015

Online Course: Getting Started with Jenkins Continuous Integration

Just completed the online course "Getting Started with Jenkins Continuous Integration", it is very simple to follow and perfect for beginners who want to use Jenkins for CI. One thing though, user can ski the section 3 and jump to section 4 on plugins to learn how to set up MSBuild and MSTests plugin properly if they want to follow section 3 on hands-on, otherwise, might waste some time trying to figure out why builds failed even though the plugins have been installed.

Link: http://www.pluralsight.com/courses/jenkins-introduction

The Docker Book

Bought this book to learn docker, totally worth the money. Just completed reading it and was already able to experiment the results on AWS EC2.

Link: http://www.dockerbook.com/

Online Course: Introduction to SVN

Just completes the online course "Introduction to SVN", I should say this concise course is much better than reading a book which makes you tire by forcing you to read nonessential features that are difficult to remember.

Link: http://www.pluralsight.com/courses/intro-to-svn

Online Course: Text Retrieval and Search Engines

Very nice to course to learn how to implement search engine. Thanks to the course, I was able to build a basic search engine in C# having features introduced in the course such as:

Ranking Functions:
  -- BM25, Pivoted Length Normalization for Vector Space Model (IDF, TF transformation, doc length normaliation)
  -- JM and Dirichlet Prior Smoothing for Language model based query likelihood
  -- PageRank and HITS from Link Analysis

Feedback Functions:
  -- Rochhio algorithm with implicit feedback for VSM
  -- KL divergence model for LM

Inverted Indexing and Map-reduce

Web-crawler:
  -- breadth-first search, parallel, focused search

Link: https://www.coursera.org/course/textretrieval


Saturday 11 April 2015

Concepts & Applications of Inferential Statistics

Very nice text book on inferential statistics, teach with easy-to-understand examples. I was able to implement the ANCOVA and two-way ANOVA in C# based on the explanation given there.

http://vassarstats.net/textbook/

Thursday 9 April 2015

Online Course: R Programming

Very easy-to-follow and concise course on R Programming, take me around a day to view all the lecture videos and practice in R while following the videos (I liked Dr. Roger Peng's pace as well as the selective inclusions of R features in the course materials, most of the book on R out there try to cover too much and only ends up making the books more like a desktop reference or instruction manual for R). I particularly likes the parts covering the explanation on the usage of lapply, sapply, apply, mapply, sapply and split, as well as the parts covering the subsetting of vector, list, matrix, and data frame, which in the past it is a bit confusing for me

https://class.coursera.org/rprog-013

Tuesday 7 April 2015

Online Course: Data Analytics and Inference Statistics

Very nice course for statistics introduction, Dr. Mine Centinkaya gives very easy-to-understand and concise explanations for many basic concepts such as probability tree, bayes rule, CLT, confidence interval, hypothesis testing, chi square independence and GOF testing, distributions such as t distribution (used for when CLT does not hold for small samples), f statistics and ANOVA. The course is still continuing but i could not wait for the availability of the videos for the last two weeks and ends up reading the companion book "OpenIntro Statistics" (the last two chapters more on linear/logistic regression as well as related statistics such as predictor correlation, predictor coefficient confidence interval, R^2, residuals as useful tools such as backward elimination and forward model selection using p-value and R^2)

https://class.coursera.org/statistics-003

OpenIntro Statistics

Very nice book to start learning inferential statistics, very concise and contains a lot of examples. The book is freely downloadable from:

https://www.openintro.org/stat/textbook.php?stat_book=os

You will be able to get a clear explanations of concepts such as central limit theorem, confidence interval, standard error, hypothesis testing (for continuous, categorical variables), Chi square GOF and independence test, normal/t/f statistics, bootstrapping, ANOVA, multiple comparisons, regression model selection (forward, backward model selection).

Sunday 22 March 2015

Online Course: Statistical Reasoning for Public Health 2 Regression Methods

While this course may be useful for persons with less technical background, but somehow i found this course is too simple for my taste.

https://www.coursera.org/course/statreasoning2


Online Course: Regression Models

The course is not as comprehensive as i thought but still worth my time for going through quickly on some of the concepts learned before.

https://www.coursera.org/course/regmods

Taming Text

Very nice book about how to use java for programming various NLP tasks such as fuzzy string matching (e.g., edit distance, ngram-based distance), text clustering and classification, tagging and name finding, etc using various tools such as Carrot2, Solr, Porter Stemmer, OpenNLP, Mahout, etc.

http://www.manning.com/ingersoll/

Online Course: Natural Language Processing

Very nice course that talks about language models (e.g, n-gram) and parser (e.g. probablistic context-free grammar and CYK parsing algorithm) and how to implements algorithms for various NLP tasks such as POS tagging, named entity recognition, sentence and phrase chunking (e.g., HMM, log linear model, global linear model), language translation (e.g. IBM models and phrase-based models).

https://www.coursera.org/course/nlangp

Online Course: Algorithm I and Algorithm II

It is a great and easy-to-understand course for learning algorithms such as sorting, data structure, search, string-based operation, graph search, etc. I got away with an arsenal of knowledge for things such as ternary-search-trie, binary search tree, red-black tree, binary heap, R-way-trie, KMP substring search, NFA regular expression,  Hauffman compression, LWZ compression, Dijstra, spanning tree, max flow, simplex algorithm,  and many other useful algorithm tips.


https://www.coursera.org/course/algs4partI

Tuesday 6 January 2015

Unity 4.x Game AI Programming

Just complete the book. Interesting readers can buy it from :

https://www.packtpub.com/game-development/unity-4x-game-ai-programming

While the book is not impressive in Game AI content compared to some of the more specialized Game AI books that i read in the past, it does contain some code snippets which show how the game agent should behavior, as well as useful tips for physics and animation. Moreover the book is rather easy to follow.

Thursday 1 January 2015

Beginning 3D Game Development with Unity 4

Just completes the book, interesting reader can go to the following link to buy it online:

http://www.apress.com/9781430248996

The books is primarily for point-and-click adventure game and goes in length to describes the various of this game genre's development in Unity game engine. It has lots of instructions about how to perform various tasks of a point-and-click adventure game development in Unity game engine. On the other hand, the book is too long and a bit long-winded for my taste. While the coding and development is not difficult to understand, they are not very concise. To my personal taste, the javascript codes in the book do not provide very well encapsulated OOP. Some parts of the scripts are simply too long-winded and do not need to be explained for me (as they are quite easy to understand with a simple example, but sometimes take 20 or 30 pages), which i feel it is really costly for someone attention span when what one does need is just a quick understanding. The book tries to be comprehensive and squeeze most of stuffs of an adventure game development into its content, but many of the parts are just not necessary to go through and make the book feel more like a manual. Maybe they are good for some readers as reference. The book give me a good opportunity to learn the generic and legacy animation though.