RSS feed [root] /weblog /design



title search:


Thu Apr 06 06:32:51 GMT 2023


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

Sun Jun 10 14:54:15 GMT 2012 From /weblog/design/examples


The design of LLVM -[..]9_h&elq=d513b4b897824dcc8fef763eaf9bc12a

(google search) (amazon search)

Thu Jun 07 17:22:23 GMT 2012 From /weblog/design

state machine[..]developers-never-use-state-machines.html

(google search) (amazon search)

Thu Jun 07 17:21:55 GMT 2012 From /weblog/design


Is it better to wrap all node with methods, or use regular expression to manipulate? I think we should use best tools case by case. -

Matching Wildcards: An Algorithm -

Generic Text Comparison Tool with LCS Approach -[..]neric-text-comparison-tool-with-lcs.html

(google search) (amazon search)

Sun May 20 08:51:05 GMT 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)

Sat May 12 16:25:08 GMT 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 14:38:34 GMT 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 02:03:05 GMT 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 14:35:45 GMT 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)

Mon Feb 20 16:02:15 GMT 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 13:30:43 GMT 2011 From /weblog/design


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

(google search) (amazon search)

Wed Oct 19 13:04:52 GMT 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 15:52:23 GMT 2011 From /weblog/design/interview

Continuous Delivery

Overview of CD, and some Q & A -

(google search) (amazon search)

Sun Oct 16 15:51:03 GMT 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 02:09:16 GMT 2011 From /weblog/design


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

(google search) (amazon search)

Sun Oct 02 17:04:16 GMT 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)

Wed Sep 14 16:44:48 GMT 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)

Wed Sep 14 16:39:54 GMT 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)

Tue Aug 23 16:39:31 GMT 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)

Sat May 14 19:02:16 GMT 2011 From /weblog/design


(google search) (amazon search)

Sat May 14 18:59:23 GMT 2011 From /weblog/design


(google search) (amazon search)

Sat May 14 18:52:07 GMT 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)

Sat May 14 18:40:40 GMT 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)

Sat May 14 18:19:55 GMT 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)

Sat May 14 18:11:54 GMT 2011 From /weblog/design


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)