RSS feed [root] /design /weblog



title search:


Thu May 23 22:45:24 HKT 2019


(google search) (amazon search)
download zip of files only

Sun May 20 16:51:05 HKT 2012 From /weblog/design


Java Immutability -[..]_id=50161&asrc=EM_NLN_4133229&uid=703565

"A similar pattern is that with objects that you need to open before usage and make sure that they are closed on usage completion."[..]2/initialize-pattern-and-open-close.html

Discussion of various approach that implement immutable class -

How to create immutable class, and why it is better? -

Immutable Event -[..]/cqrs-event-sourcing-and-immutable-data/

(google search) (amazon search)

Sun May 13 00:25:08 HKT 2012 From /weblog/design


Contain discuss about if value object should be immutable or it is still ok -

MongoDB architecture -

Why clocksource.h is a nice API -

(google search) (amazon search)

Mon Apr 16 22:38:34 HKT 2012 From /weblog/design/distribute


How facbook manage photo storage -

Promotion letter for oracle coherence, but still a good reading -[..]e-of-high-performance-ecommerce-backend/

(google search) (amazon search)

Sun Mar 25 10:03:05 HKT 2012 From /weblog/design


A nice reference -[..]m/2006/07/what-is-defensive-copying.html

Defensive coding -[..]nsive-programming-being-just-enough.html

(google search) (amazon search)

Thu Mar 01 22:35:45 HKT 2012 From /weblog/design/examples

mailinator compresses

How Mailinator compresses email by 90%, how to analysis the bottleneck and how to find the solution to get good compression ration and also fast to compress -[..]w-mailinator-compresses-email-by-90.html

(google search) (amazon search)

Tue Feb 21 00:02:15 HKT 2012 From /weblog/design

trade off

Discussion of trade off between having modular design which is easy to test difference module independencely , verse have big testable context that able to write test for all module -[..]s/2007/06/11/collateral-effort-revisited

Discussion of trade off between performance and consistent about distributed system -[..],

Discussion about good thing and bad thing for blocking method -[..]s-blocking-methods-in-java-and.html#more

(google search) (amazon search)

Wed Dec 21 21:30:43 HKT 2011 From /weblog/design


Compare related words -[..]011/12/11/reflections-for-the-perplexed/

(google search) (amazon search)

Wed Oct 19 21:04:52 HKT 2011 From /weblog/design/interview


Discuss about C and C++ -[..]int?articleId=184408272&siteSectionName=

Discuss about history of C, UNIX and GO -[..]rint?articleId=229502480&siteSectionName

(google search) (amazon search)

Sun Oct 16 23:52:23 HKT 2011 From /weblog/design/interview

Continuous Delivery

Overview of CD, and some Q & A -

(google search) (amazon search)

Sun Oct 16 23:51:03 HKT 2011 From /weblog/design/interview

Kent Beck

Passion of coding make a lot of difference -[..]/07/interview-with-kent-beck-circa-2001/

(google search) (amazon search)

Sun Oct 09 10:09:16 HKT 2011 From /weblog/design


Discussion about racing condition -[..]smatter/cqrs-race-conditionsandsagasohmy

(google search) (amazon search)

Mon Oct 03 01:04:16 HKT 2011 From /weblog/design


Robustness, list of general design principle -[..]2/robustness-the-forgotten-code-quality/[..]tics-of-a-robust-application-or-service/

How to write readable code -[..]net-framework/writing-maintainable-code/

(google search) (amazon search)

Thu Sep 15 00:44:48 HKT 2011 From /weblog/design


Top 10 mistake that cause poor performance Java EE - which, the concept apply much more than enterprise[..]the-architecture-for-a-software-project/

(google search) (amazon search)

Thu Sep 15 00:39:54 HKT 2011 From /weblog/design


A comment about jsch library, discuss about how the author compare this with commerice library, how easy to use, what make it easy or not easy to user, and how to make it easier a nice reading for writing library[..]?permalink=jsch_a_SFTP_java_library.html

A simple implementation of cache -

Good examples of bad codes -[..]ike-a-senior-developer-about-clean-code/

Design of recommandation engine -

(google search) (amazon search)

Wed Aug 24 00:39:31 HKT 2011 From /weblog/design

Object Calisthenics

Object Calisthenics is an idea suggest by Jeff Bay in The ThoughtWorks Anthology , and lists 9 rules to writing better Object Oriented code. For those who haven’t seen the book, the 9 rules are:

# Use only one level of indentation per method
# Don’t use the else keyword
# Wrap all primitives and strings
# Use only one dot per line
# Don’t abbreviate
# Keep all entities small
# Don’t use any classes with more than two instance variables
# Use first-class collections
# Don’t use any getters/setters/properties[..]1/06/object-calisthenics-first-thoughts/

(google search) (amazon search)

Sun May 15 03:02:16 HKT 2011 From /weblog/design


(google search) (amazon search)

Sun May 15 03:01:25 HKT 2011 From /weblog/design/pattern

Best pattern

Discussion about which pattern is most important -[..]page/abien?entry=most_important_patterns

Pattern Language Titles -

(google search) (amazon search)

Sun May 15 02:59:23 HKT 2011 From /weblog/design


(google search) (amazon search)

Sun May 15 02:52:07 HKT 2011 From /weblog/design/pattern


Suggest use to take a fresh look of original "pattern language" - , in his opinions, it is more about separate design to difference groups than create reusable design.

Some more...[..]007/5/17/design-patterns-are-code-smells

Some say pattern should be language feature ...

Closely related, there are no golden rules and silver bullet, Design Pattern can help us in some design problem and provide some design suggestion. However, we need to know what it good for and bad for[..]est-practice-vs-pattern-vs-standard.html[..]ndard-approach-does-not-necessarily.html

Use pattern in hello world, sample of over engineering:

(google search) (amazon search)

Sun May 15 02:40:40 HKT 2011 From /weblog/design


Arguement of overuse interface, I trend to support -[..]ramming-to-interfaces-strikes-again.html

A very long discussion related, Test-friendly, but not caller-friendly? -[..]ring-your-development--t2039307i120.html

Comparison of interface vs. abstract class -[..]ry/api_design_interfaces_versus_abstract

Some issue of marker interface, may be annotation can help. However, I don't think those so call issue are really problem, those just poor usage of marker interface -

(google search) (amazon search)

Sun May 15 02:19:55 HKT 2011 From /weblog/design


The 37signals manifesto was our original site from 1999-2001. It's a collection of 37 nuggets of online philosophy and design wisdom. It's a great introduction to the 37signals' school of thought and a fun, quick read to boot. -

(google search) (amazon search)

Sun May 15 02:11:54 HKT 2011 From /weblog/design/concurrency


Deadlock detector sample -

Deadlock in J2EE, explaining deadlock in various place, e.g. DB, VM, code,... -

A blog comment about database deadlock very detail -[..]2007/04/java-wish-list-2-retry-code.html

Technique to prevent deadlock: Automatic Lock Releases, Timeout, automatic detection -

(google search) (amazon search)

Sun Apr 24 01:07:07 HKT 2011 From /weblog/design


Introduction to Saga -[..]sistence-and-event-driven-architectures/

(google search) (amazon search)

Sun Mar 13 00:24:49 HKT 2011 From /weblog/design/pattern


Non-Software Examples of Software Design Patterns -[..]vers/nonSoftwareExample/patexamples.html[..]hain-of-Responsibility-Pattern-in-C.aspx

Patterns to replace switch -

Design pattern in JDK -

(google search) (amazon search)