Recent posts

New Life Begins In BayArea

多年的梦想实现,展望崭新的人生目标!始终自勉,热诚而稳重,谦逊但专注;不卑不亢,以德服人;严于律己,宽以待人;永远斗志高昂,笑对挫折;不断修善自身,追求一颗强大的内心,永不言败! Long time's dream comes true, looking forward to brand new target now, self-encourage, be zealous and steady, modest but focused; be neither overbearing nor servile, win people by virtue; always be passionate, laughs in the face of setback; continuously upgrade myself, pursue a strong heart, never talking about failure! <img src="

PacktPub 10 years celebration

PacktPub 10 years celebration PacktPub 10 years celebration! All eBooks and Videos at just $10 each until July 5th, my book <Instant Cucumber BDD How-To> will also be promoted on the celebration page, hooray! #Packt10Dollar

My Love on Vim

My life with Vim I started learning Vim during Aug, 2011, the original motivation was trying to "get rid of my mouse while I am coding", I had no teacher but google, learnt it from the very hard way. From the beginning 2-3 months, honest speaking, I was less productive while using Vim comparing with IDEs, there were so many things I could do in second in IDE, for example: search/replace, formatting, re-factoring, folding, and so on, whereas I had to spent days in learning how to accomplish a simple task in Vim, that was really painful, but I never gave up! After the first two months of e...

My Book <Instant Cucumber BDD How-to>

The background I received an email during November 2012 from Packt, in the email they asked me whether or not consider writing a book for them related with BDD using Cucumber based on Rails platform, the book will only contains 50-70 pages, they named this kind of book "Instant book", usually it is a quick guide for beginners using some kinds of technologies. Well, my first reaction was: "Wow, I even never thought about writing a book, if I am going to write one, hum... can I?", I did suspect myself a little bit, especially, the book will be written in English, I admitted I was not confiden...

My New iMac

Hooray! My new development & gaming machine - the later 2013 iMac! I wrote this blog post to record my thoughts and feelings before and after I purchased this baby:) My open questions and the answers I got from the Apple customer service I will choose a dedicated SSD, will it be PCIe based? Will the 2013 iMac easy to expand memory? Similar with the later 2012? If I purchase the apple care in Singapore apple website online, will it valid in case in the future I migrated to other country (for example, USA) ? Will the iMac pre-installed OSX mavericks? If I buy a external USB 3.0 hard driv...

Setup MongoDB with sharding infrastructure

The landscape  Sharding is the strategy that MongoDB uses to horizentally scale the entire data store infrustructure and meet the demands of data,growth, the infrastructure can be demonstrated as image below: Preparation To simulate a production like environment, a minimum number of 7 physical/virtual servers are required, the role of them are: 3 for Mongo config servers 1 for Mongo shard server (mongos) 3 for a Mongo shard (Replica set), 1 primary and 2 secondary (or 1 secondary and 1 arbiter). Note: all the machines above need have mongod installed, for in...

MongoDB Schema Design and Common Practices

Installation Exhaustive documentation: Mongo executables will be installed into /use/bin/, database files will under /data/db/ Log file location: /var/log/mongodb/mongodb.log

WTF?IBM Lotus and Domino Server?

Technical tags: IBM, Domino, AIX, LotusScript, ODBC/JDBC, ADO, OLE DB, Assume we are now in Jurassic period, the technologies above are in Cambrian period, developers who has less than 4 years experience probably never heard about any of the above terminologies... No choice, I was dealing with them during the passes few weeks, I met ODBC as soon as I graduated while I was development ASP website using VBScript, but it was soon replaced by ADO, and after half a year I started studying .NET so I used ADO.NET, nowadays we usually talk to Entity Framework which abstracts ADO.NET interfaces... N...

Cache Reverse Proxy - Varnish

Introduction Varnish is an HTTP accelerator, the official page is: Varnish stands in front of the web application server to be a cache reverse proxy (also can be a load balancer), it can simply cache all the static resources in memory, and can also be powerfully configed using VCL (Varnish Configuration Language, a DSL for Varnish configuration) to cache dynamic content, in addition, Varnish implements ESI (Edge Side Include) standards to provide ability to cache static parts of the page.

Cache Reverse Proxy - nginx

Introduction On the homepage of nxing wiki, there used to be one sentence which really impressed my very much when I first time to take a look at it and learn it three years ago: Apache is like Microsoft Word, it has a million options but you only need six. Nginx does those six things, and it does five of them 50 times faster than Apache.  --Chris Lea