Uml in Practice

Today I received a new task that they wanted me to be familiar with the whole business logic chain, so I started to use UML usecase diagram to represent the relationship. Actually I used to draw class/sequence diagrams via Jude, at this time I investigated couples of UML tools that can easily work both on Mac and Windows, e.g. astah, ArgoUML, LucidChart, Visual Paradigm. Considering the free licence, I choosed StarUML that is free and also works well on MacBook Retina.

Read More

Goal Setting and Accomplishment in 2015

Listed few things that I am going to investigate in the next year. The detailed chores will be fullfilled when I have a good idea.

  • algorithm, MIT
  • programming paradigms, concepts, e.g. scala, python, at least one programming paradigm
  • big data process, e.g. hadoop, spark, storm
  • distributed system architecture, e.g. optimization
  • large-scale application experience, like gc tuning, server cluster, DB read-write separation
  • lisp, emacslisp, SICP
  • computer science, like machine learning
  • MOOC, e.g. coursera
  • github contribution and search great started projects
  • TCP/IP, Http Protocol

Install Golang and Emacs Plugins

env setup

  • create dir GOPATH=~/Projects/goprojects
  • edit .bash_profile
1
2
3
4
5
6
7
GOPATH=~/Projects/goprojects
GOROOT=/usr/local/go
GOOS=darwin
GOARCH=amd64
PATH=$PATH:$GOROOT/bin:$GOPATH/bin
export PATH
export GOPATH GOOS GOARCH

emac plugins tips

  • copy /usr/local/go/misc/emacs/go-mode-load.el into emacs lisp dir, and make minor modification on your own personal setting
  • install mercurial, otherwise you cannot run hg command
  • go get code.google.com/p/rog-go/exp/cmd/godef, then we can use godef function
  • follow steps with nsf/gocode

Plugins list

  1. https://github.com/dominikh/go-mode.el
  2. https://github.com/nsf/gocode

References

  1. http://dominik.honnef.co/posts/2013/03/writing_go_in_emacs/
  2. http://tleyden.github.io/blog/2014/05/22/configure-emacs-as-a-go-editor-from-scratch/
  3. https://golang.org/doc/install#download
  4. http://go-lang.cat-v.org/text-editors/

Getting Started With Full Stack Javascript

Since I was enlighted by Minix and started to learn nodejs at the beginning of the June, I have realized that full-stack javascript might be dominating the web framework instead of rails or J2EE. I started to investigate any alternative framework in this new tech concept.

In my initial project with full-stack javascript, requirejs/backbonejs/express/mongodb were selected. Backbone is lightweight frontend js mvc framework which has fewer learning curve and unopinionated, comparing with angularjs. Additionly, Express is the most common mvc server-side framework in nodejs. Moreover, mongodb is relatively friendly to nodejs json format in server-side code as well as command-line shell. Thus, the whole brand new tech stack has been determined.

Before we commerced to scanffold our project using yeoman-generator, we took a glimpse on tutorial i.e. Developing Backbone.js Applications by Addy Osmani, Web Development with Node and Express, in order to be familiar with mvc conecpt, restful api, and middileware in express. Besides, I also scan tricks in requirejs/bower/node package management in order to build a highly-maintainable project with a mainifest dependency.

Read More