play-clj是一个基于libgdx的clojure framework. libgdx是个很有名的跨平台游戏开发组件。如果你不用unity等商业引擎,那么多半只能选择它。CLOJURE是一个lisp的jvm语言。


废话少说,先跟着作者的教程写个进入界面title screen。


GUI vs CLI rethink

I was convinced that CLI is better than GUI.

There was a trend around 2005 that Linux command line shell is the shit. Being young and desperately wanted to stand out from the crowd, I jumped the CLI wagon.

Knowing all the useful Unix commands definitely wasn’t enough. I abandoned the IDE for VIM, them Emacs. I customized my web browser to be keyboard controlled only using vim-mode plugins. I use fancy windows manager like Xmonad.

I felt proud. I can do so much things better: Remotely configure my web projects on any server; Navigate different languages so easily that I often call myself language agnostic. Etc.

Till one day, I realized how short-sighted I was. In my awesome CLI world, once I need some information, I fired up the browser check for online docs. I constantly misspell variables. I go in-and-out different directories so often just to search for specific code segments in files. The last straw on the camel was Notch’s live-coding sessions. He does not even switch tabs using hot-keys!

Auto-completion, language awareness, project scale string search, REPL, platform/OS integration. Dude, what are you talking about? Emacs/VIM/Shell have all these. Right, but to get these shit work, they need MASSIVE CONFIGURATION! When all the IDE/GUI/Windows users are getting them for FREE and OUT-OF-BOX!

朝闻道,夕死可矣。 I am going to embrace the IDE and whatever tool-chain a stack throw at me from now on. I need to be pragmatic.

Parenting thoughts

I had an late night debate again with my wife. It’s quit mind hogging, especially when our daughter is sleeping besides us unstably.

It’s merely about our career futures. I suggested that we should keep looking for new opportunities, where my wife agrees with me. But she is also concerning about the growing up environment for our daughter. Would she have a stable society around her? How about education? Housing? Friendships and relatives? Are Grandparents going to be around to help?

For me, education comes from internet mostly. Being the only-child, my friendships comes from school mostly, so is my job that is paying our house mortgage. To me , learning new knowledge is the source of all the powers.

Looking at how fast this world is evolving, I am optimistic about the ability of the society to feed basic needs of our child. Driver-less cars are coming; MOOCs is becoming popular; VR or Holodeck is going to the mass commercially; Bitcoins will be disrupting how governments and the banks are controlling the market. I am not even sure if there wouldn’t be an option to live “off-earth” when our daughter grown up.

I get it that people are very careful about a stable live. Steady income, good neighborhood, friends that stand by your side whenever needed. But what I afraid the most, is that losing the ability to adapter into our dramatically different future.

I just want to say this:

If you like literature programming, just look at your git log. 

A more efficient 3D printing algorithm

General 3D printers use FDM (fused deposition modelling) technologies due to their affordability. However, FDM extruding requires a continuous Gcode (tool controlling code) path to avoid overhang problems. Furthermore, solid polygon slices of printable objects use infill paths to save materials while the object remains sufficiently sturdy. This presentation addresses some approaches to apply a travelling salesman algorithm in Gcode path generation for more efficient printing results using less material with reduced overhangs.


See my seminar this semester.



1. Finish the reprap bootstrapper.

2. Get arduino kits and servos/motors in store

3. use Clodiuno and friends for playing 3d printing stuff.

4. Get kinect with standard usb, then use quil and bifocus.

pursuit of dreams

it’s hard to pursuit your dream. you get caught by ‘other stuff’ that you got to do. It’s like your whole life is depending on this ‘other stuff’ you are doing. And even though you know this is a lie.

In the end, you will keep doing ‘the other’ stuff that people told you should be doing, till the day you die. coz you care what other people say.