All Posts

Deploy a pelican project on Ubuntu/Debian development environment

I just switched the template of this blog site, changed the url, made the changes on url of, will online a whole new home page, so that this blog will be only a part of the new site system. As a note, I put how to setup pelican here, after 2 years using this static blog system, I still think it is one of the best option. To setup the pelican project,

D3.js two nations geographic example

I got involved in a data analysis project that needed a website with program genereated diagrams. Quickly after some research, I found echarts from, and D3.js are the most popular diagram plugins currently. Given sometime for my first experiements with these data visualization frameworks, I got some result here, in the end actually I acquired an award from it, lol. There were still lots of work left for this, but I’m glad that I worked it out, especially I’m happy with the Async Programming technique part I learned.

CUDA 6.5 starter example with timing and Unified Memory access.

Now, I’m on the Chinese New Year holiday, got some time to learn CUDA which I left it behind for long time. I found the CUDA Programing Doc doesn’t present a complete unified memory code. Here is the a blog article about the unified memory in the CUDA 6+, so what I did here is just implementing this developer friendly feature merging with the working method of timing both GPU kernal run time and the same function on CPU’s run time.

New book found, Computer Vision for Visual Effects

I was just searching the key words “visual effect programming language”, interestingly I got the book as one of the result, Computer Vision for Visual Effects by Richard J. Radke. Then I think, Oh, THIS IS WHAT I AM GOING TO DO. Further researches return me a presentation of the author, at here. Maybe you can get the book from Amazon. Wish all TD or VFX supervisors can realise how Computer Vision researches advanced the VFX industry in all these years.

Binary format of the negative number for serial device programming

When I happens to program for a step motor controller, I found it uses positive/negative number formatted in 4 bytes to represent the rotating step number with the direction. In the manual it says the the device checks if the highest bit is 1, then the 4 bytes value represent a 31 bits available negative direction step number. However this is really about the signed number representations rather than check the highest bit.

Hello World, pelican!

Hellow World! I’m using the python based static blog generator, pelican. So I can create this article with vim ! And now test the pygments. first piece: #!/bin/bash echo "Hello, World!" second piece: def hello(): print "Hello, World!" third piece: #include <iostream> int main() { std::cout << "Hello, World!" << std::endl ; return 0 ; } fourth piece: #include <iostream> int main() { std::cout << "Hello, World!" << std::endl ; return 0 ; }

Creating a New Theme

Introduction This tutorial will show you how to create a simple theme in Hugo. I assume that you are familiar with HTML, the bash command line, and that you are comfortable using Markdown to format content. I’ll explain how Hugo uses templates and how you can organize your templates to create a theme. I won’t cover using CSS to style your theme. We’ll start with creating a new site with a very basic template.

(Hu)go Template Primer

Hugo uses the excellent go html/template library for its template engine. It is an extremely lightweight engine that provides a very small amount of logic. In our experience that it is just the right amount of logic to be able to create a good static website. If you have used other template systems from different languages or frameworks you will find a lot of similarities in go templates. This document is a brief primer on using go templates.

Hugo 主题 Nuo 文章样式预览

这篇文章集中说明本人博客主题所支持的 Markdown 语法和 Hugo Shortcodes 插件,你也可以在这里预览到他们的样子。如果你不喜欢某些部分的样式,可以去修改 content.scss 和 shortcodes.scss 这两个文件。预告一下,我所用的这个名为 Nuo 的 Hugo 也将于近期发布,敬请期待。

Getting Started with Hugo

Getting Started with Hugo

Step 1. Install Hugo Goto hugo releases and download the appropriate version for your os and architecture. Save it somewhere specific as we will be using it in the next step. More complete instructions are available at installing hugo Step 2. Build the Docs Hugo has its own example site which happens to also be the documentation site you are reading right now. Follow the following steps: Clone the hugo repository Go into the repo Run hugo in server mode and build the docs Open your browser to http://localhost:1313 Corresponding pseudo commands: