Minispec : Mini BDD Framework in Coffeescript

| Comments

Just another test framework

During the catastrophe of Sandy storm, my place have no electricity and water, so I stay in my friends place for whole week. And I need to find something to do except eating, surfing internet and boardgame. So I just wrote another test framework.

Inspired by Zach Holoman’s gist I try to host the framework in the gist form. Because every gist is also a git repository.

gist source

Reading: The Lean Startup

| Comments

A startup is a human institution designed to deliver a new product or service under conditions of extreme uncertainty.

Recently I finally finish reading the lean startup book.

The author Eric Ries is writing blog for sharing his startup experience for several years. This book is include his experience of his own startup and tutoring experience. He points out lots of the critical problems that a startup will face. Include finding market fit, testing hypothesis and validate growth.

As an employee of a startup, It is a really interesting book.

Twelve Factors App

| Comments

The Twelve Factors App is a methodology that a web application should follow to be able to easily deploy and scale on today’s SAAS platform like Heroku. This methodolgy is announced by the Heroku Founder Adam Wiggins. The content is the based on their experience of deploying millions of applications.

When I first saw this declaration, I just feel that this might be extract from rails and herokus best practices, but actually this declaration is more then practices but a methodology to improve the maintainbility and scalability of web application. so I like to share Heroku engineer’s slide about 12 factors app:

Bootstrap Your Ember.js Application

| Comments

Ember.js is a javascript MVC framework developed by Rails core team member Yehuda Katz, Tom Dale and Charles Jolley. Compare to other javascript MVC framework, Ember.js not only provide a MVC framework for seperation of logics, but also focusing on some common problems when developing complex javascript application.


One common problem of javascript application is how to manipulate DOM element and insert data into DOM, for example, a jQuery app retrive user data and show on screen will look like this:

Announcing N37 Url Shortener

| Comments

Few days ago, I started to work on a simple url shortener. The original idea was from one of my friends, he mentioned about the idea of implement a simple and deployable url shortener. This idea just popout my head when I was working on other side project. So I spend a few days working on it and it turns out to be an interesting project that I want to blog about:

A Url Shortener

A url shortener, as its name, is a application that provide user a shorter version of url. Like the most famous one:, which map the url address into a short sequence of code, like Make user easier to share the link on social media like twitter or forum.

Code Odyssey : Express

| Comments

Recently I was looking for web frameworks on Node.js. There are Tower.js, Railway, GeddyJS, SocektStream, Meteor and lots of cool framework on Node.js. However, Express, which created in the beginning of Node.js era, is still a very stable and easy to use framework with the most plugin and community support. Therefore, I think it is a good candidate as my 2nd source code review project.

Express.js is developed by TJ Holowaychuk, who rebuild the web development on Node.js with express, jade, mocha, stylus and more. Express is inspired by the simple of Sinatra provide a simple and elegant interface for http request, also with connect middle support that let user can easily extend the framework.

Go Programming Example

| Comments

GO v1

Recently, the Go language release it’s version 1.0, which have a more constant api that aiming on attracting enterprise developers to use go as part of their solution.

I read the tutorial when it’s first release. At that time, Go was positioned as a new system language, Like C or C++. But right now it become more powerful that can be use on any general programming topic that require efficiency and concurrency.

As a language, Go has pretty weird syntax such as postfix type decleration and interface oriented. But other then that, Go is more like a compiled version scripting language. Which is pretty easy to write, and focusing on making threading easier through It’s Go routine.

Backbone-js Javascript MVC Framework

| Comments

What is Backbone.js?

Backbone is a framework for front-end JavaScript, unlike jQuery focus on easier DOM manipulation and event binding, backbone provide a structure for separating data model and DOM, just like a MVC framework separate model, view and controller. Make heavy JavaScript application easier to develop and maintain.

Why Backbone?

Amazon Interview

| Comments

In 2011, I flew to Seattle for an on-site interview with Amazon, that is an interesting experience and I learned a lot from the preparation and knowing how these company finding new talents. I would like to share some of my experience on that interview.


After handing out my resume on school’s career fair, I got an email from Amazon campus recruiter that they have an interview event for campus hire hold on Amazon campus in Seattle, and they would like to pay me the trip to the interview. That really surprise me because what I heard is they will usually have one or two phone interview before you get to the on-site interview. However, this is a great oppurtunity, and also a free trip visiting Seattle. So I just go for it.

Bootstrap 2.0

| Comments

Bootstrap , from twitter

Bootstrap, a css framework that developed by Twitter, created by Mark Otto and Jacob Thronton. Which original was the internal framework in twitter for their products and quick prototyping. On the github page, Bootstrap is described as:

Simple and flexible HTML, CSS, and Javascript for popular user interface components
and interactions.

That is, Bootstrap is not only just a css framework, but actually an UI framework base on HTML, CSS and Javascripts. It includes the basic css framework that handle details like css reset, typography and grid system. Moreover, it includes the base UI elements like navigation bar, button, form and paginition… and the interaction UI elements like dropdown, popover and tooltips. Evenmore, all of the color and elements is customizable because the css is generated by less, all setting is in varibles.less file and allow user to change the variables or reuse the elements class in less.