RSS feed [root] /weblog /design



title search:


Thu Apr 06 06:32:51 GMT 2023


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

Mon Apr 14 03:43:47 GMT 2014 From /weblog/design/distribute


MapReduce patterns

Basic MapReduce Patterns
Counting and Summing
Filtering (“Grepping”), Parsing, and Validation
Distributed Task Execution
Not-So-Basic MapReduce Patterns
Iterative Message Passing (Graph Processing)
Distinct Values (Unique Items Counting)
Relational MapReduce Patterns
GroupBy and Aggregation


Showing that map reduce can support real time transaction processing -[..]09/12/relevance-meets-real-time-web.html

Using map-reduce in cloud -

Papers of using mapreduce -[..]thms-in-academic-papers-may-2010-update/

mapreduce experiment -

Pattern and anti-pattern -[..]/2010/08/apache_hadoop_best_practices_a/[..]bout-the-performance-of-map-reduce-jobs/

(google search) (amazon search)

Wed Mar 19 02:56:41 GMT 2014 From /weblog/design


Really? I would rather say every line of code need to maintain -[..]s-copy-and-paste-programming-really.html

Data, Type, Algorithm -[..]012/05/types-of-duplication-in-code.html

Using closure to prevent code duplication -[..]

"Duplicated code is the root of all evil in software design. When a system is littered with many snippets of identical, or nearly identical code, it is indicative of sloppiness, carelessness, and sheer unprofessionalism. It is the guilt-edged responsibility of all software developers to root out and eliminate duplication whenever they find it." -

(google search) (amazon search)

Thu Mar 13 08:22:34 GMT 2014 From /weblog/design


Discussion of style of writing code, like always have valuable for return value, and use return for parameter check -

We should really delete the code if we need to...

And more about programming style -[..]for-keeping-your-programming-code-clean/

About using Of() as factory name -[..]-subtle-best-practices-when-coding-java/[..]uk/2014/03/10/are-comments-always-wrong/

(google search) (amazon search)

Wed Mar 12 05:37:40 GMT 2014 From /weblog/design/pattern

builder[..]-reasons-why-i-like-the-builder-pattern/ <- and it is not Silver Bullet

(google search) (amazon search)

Thu Jan 09 02:40:28 GMT 2014 From /weblog/design/interview

Maurice Herlihy[..]012/05/interview-of-maurice-herlihy.html

(google search) (amazon search)

Fri Dec 20 04:17:18 GMT 2013 From /weblog/design/distribute


Solution #1: Have More Resources than You'll Ever Need
Solution #2: Disable Features During High Loads
Solution #3: Auto Scaling
Solution #4: Use Message Queues[..]spikability-applications-ability-to.html[..]izing-and-capacity-planning-assumin.html

(google search) (amazon search)

Wed Dec 11 01:16:42 GMT 2013 From /weblog/design


Batch processing best practices -[..]013/10/30/scheduled-jobs-best-practices/

Batch can improve latency, if it reduce number of request -[..]ng-requests-actually-reduce-latency.html

(google search) (amazon search)

Wed Nov 06 04:37:46 GMT 2013 From /weblog/design



Discussion of page object -

Difference API document tools -

(google search) (amazon search)

Fri Nov 01 06:28:59 GMT 2013 From /weblog/design/examples


Key points

1) No stored procedures are used. There are some very simple triggers.
2) Move cpu-intensive work moved out of the database layer to applications applications layer: referential integrity, joins, sorting done in the application layer! Reasoning: app servers are cheap, databases are the bottleneck.
3) No client-side transactions. no distributed transactions
4) J2EE: use servlets, JDBC, connection pools (with rewrite). Not much else.
5) No state information in application tier. Transient state maintained in cookie or scratch database.

How ebay use Cassandra -[..]-practice-of-cassandra-data-model-design[..]ctices-cassandra-data-model-design-part2[..]dra-data-modeling-best-practices-part-1/[..]dra-data-modeling-best-practices-part-2/

(google search) (amazon search)

Tue Oct 29 09:54:03 GMT 2013 From /weblog/design/distribute


(google search) (amazon search)

Thu Oct 24 09:01:36 GMT 2013 From /weblog/design/examples


(google search) (amazon search)

Fri Oct 18 06:22:38 GMT 2013 From /weblog/design/distribute


Compare SQL ( RDBMS ) and noSQL ( object base {distributed??} ) data management -

The definition -

Is Cassandra really that good? -

NoSQL Options Compared -[..]cleId=240151198&siteSectionName=database

A 3 Step Guide to Getting Started with NoSQL -[..]-step-guide-to-getting-started-with.html

SAFER THAN RDBMSs – BUILT FOR DISASTER AVOIDANCE - The[..]/10/why-nosql-can-be-safer-than-an-rdbms

(google search) (amazon search)

Thu Oct 17 10:16:02 GMT 2013 From /weblog/design/distribute


Few real time map reduce framework -

How facebook and twitter doing real-time analytic -[..]ers-approach-to-real-time-analytics.html

(google search) (amazon search)

Wed Jul 03 06:25:31 GMT 2013 From /weblog/design/examples


How Lucene implement transaction -

(google search) (amazon search)

Sat Mar 02 09:01:24 GMT 2013 From /weblog/design

code metric

Contain resource of measurable code metric information -[..]20/code-quality-for-software-architects/

Meaningful Metrics -[..]ions/115839/how-clean-should-new-code-be

Guidelines for a more appropriate use of metrics

Explicitly link metrics to goals
Favor tracking trends over absolute numbers
Use shorter tracking periods
Change metrics when they stop driving change

(google search) (amazon search)

Thu Feb 14 04:33:33 GMT 2013 From /weblog/design/pattern


How to get ride of it -

Trying to make singleton testable -

Why singleton? Some time may be just create the object once at the beginning is fine -[..]ticleS.UncleBob.SingletonVsJustCreateOne

And a good article of telling why don't use singleton -[..]works/webservices/library/co-single.html

About how to get it right in Java -

(google search) (amazon search)

Sun Feb 03 03:10:31 GMT 2013 From /weblog/design/interview

Jim Showalter

Principal engineer at Intuit -[..]im-showalter-of-intuit.html&site=jw_core

(google search) (amazon search)

Mon Jan 28 13:31:57 GMT 2013 From /weblog/design


List of Turing Award Lecture -

classic-computer-science-text -[..]0/classic-computer-science-text-and.html

How emacs is beautiful -

(google search) (amazon search)

Mon Jan 21 09:07:23 GMT 2013 From /weblog/design


Agile Models Distilled: Potential Artifacts for Agile Modeling -

Difference between Association, Composition, Aggregation, Dependency, Abstraction, Realization, Generalization -[..]1/quick-summary-object-associations.html

(google search) (amazon search)

Tue Jan 01 02:28:13 GMT 2013 From /weblog/design


Quotations on simplicity in software design -

2 hard things, caching and naming -

(google search) (amazon search)

Mon Dec 17 16:49:34 GMT 2012 From /weblog/design/interview

Alan Kay

Not interview, but a lot of useful link -[..]0_h&elq=c2568ee4975f4e69b244d72a9a8e2487

(google search) (amazon search)

Tue Oct 02 12:34:57 GMT 2012 From /weblog/design/distribute


Google spanner[..]ogle-spanners?e57078b0?317bb970?b3b99980

(google search) (amazon search)

Mon Oct 01 15:49:18 GMT 2012 From /weblog/design


Examples of proper and inproper constructor -[..]s-guide/flaw-constructor-does-real-work/

(google search) (amazon search)

Wed Sep 26 13:45:25 GMT 2012 From /weblog/design


Polyglot Persistence, choosing difference approach for storage -

How leveldb store data? SSTable ( Sorted String Table ) -[..]able-and-log-structured-storage-leveldb/

(google search) (amazon search)

Sat Jul 28 02:24:11 GMT 2012 From /weblog/design

object oriented

This article show some problems of abusing object, a good reading -

Why extends in evil -[..]avaworld/jw-08-2003/jw-0801-toolbox.html

Fundamental fault of procedure programming -

OO suck?!

(google search) (amazon search)