# I'm Zigang "Ivan" Xiao, an engineer in bay area. I have a cat called Moose.

I write about technical stuff in the field of computer science, with a focus on Machine Learning, my hobbies, including guitar playing and ballroom dancing, and my life in US. Some of my posts are written in Chinese.

# Replacing SATA Cable in Mid 2009 MBP

- - posted in

Recently, my mid 2009 MBP (Model A1278) fails to recognize the hard drive. My first bet was another disk failure on me, but it was not the case. I took down the hard drive and put it to a mobile hard drive case and it can be read smoothly.

# My Octopress Blogging Flow

- - posted in

After blogging with Octopress for a while, I have already gained some insights on it, and my publishing flow has been smoother. I think it is right time to share my flow as a reference.

# Sparse Image Reconstruction via L1-minimization

- - posted in

 Original Minimum Energy Reconstruction Sparse Reconstruction

## Introduction

This is a follow up of the L1-minimization series. The previous two posts are:

# Sparse Signal Reconstruction via L1-minimization

- - posted in

This is a follow-up of the previous post on applications of L1 minimization.

- - posted in

# Problem Setting

Ordinary Least Square (OLS), L2-regularization and L1-regularization are all techniques of finding solutions in a linear system. However, they serve for different purposes. Recently, L1-regularization gains much attention due to its ability in finding sparse solutions. This post demonstrates this by comparing OLS, L2 and L1 regularization.

# Debugging AppleScript: Print to a File

- - posted in

Debugging AppleScript is easy when you work with the script editor, simply use log to print out anything in the console. However, after you compiled it to an app, this cannot work anymore.

I find there are several ways to do it in this thread. The two approaches that work best for me are:

# OS X: Reveal File in Console

- - posted in

One of the neat things you can do in OS X is to reveal a file in Finder.app from some other applications. Turns out lots of the time, we also want to do that in the terminal. The following script helps you with that:

# OS X: Get Full Path of File Using Realpath

- - posted in

realpath is a command line utility that is included in most UNIX distributions but not Mac OS X. Thanks to Stuart Campbell, a minimal implementation is provided here, and my fork.

# Send Ctrl-a in Tmux After Rebinding to It

- - posted in

While tmux provides much better functionality than screen, most of us that work with tmux have been using screen for a long time, and it is more comfortable for us to use ctrl-a than the default ctrl-b, which is finger-strechy. Thus the first thing I will do after installing tmux is to rebind the prefix to ctrl-a. That gives us the most handy way of swapping last two windows by typing ctrl-a ctrl-a.

# Source-highlight for Matlab/octave

- - posted in

I recently worked with Matlab a lot. When in console, sometimes I want to use less to quickly examine the file content, and I have already set it up such that it uses source-highlight to output colorful escape sequence to the console. However, source-highlight does not come with a syntax support for Matlab by default. Luckily, this post and this (in Chinese) provides a solution.