Initial Review

6 views
Skip to first unread message

Jonathan Oliver

unread,
Apr 12, 2010, 8:46:57 AM4/12/10
to DDDD Review/Discussion
Greg,

The material itself is sound and flows well with logical cognitive
progression as each topic is addressed. But there were a few cosmetic
things that jumped out at me.

The largest issue is the continued use of the word "one". Let's
consider the following paragraph:
*One* can see the usage of deltas in many mature business models. The
canonical example of delta usage is in the field of accounting. When
looking at a ledger such as in Figure 2 *one* can see that each
transaction or delta is being recorded. Next to it is a denormalized
total of the state of the account at the end of that delta. In order
to calculate this number *one* must just apply the delta and use the
last known value. *One* can trust the last known value because at any
given point one could re-run all the transactions from the "beginning
of time" for that account and reconcile the validity of that value. In
other words *one* has a verifiable audit log.

Let's rewrite that paragraph without using "one":
Many mature business models exhibit usage of deltas. The canonical
example of delta usage is in the field of accounting. In Figure 2
each transaction or delta is explicitly recorded. Next to it is a
denormalized total of the state of the account at the end of that
delta. In order to calculate this number, simply apply the delta and
use the last known value. The last known value can always be trusted
because at any given point all the transactions could be re-run from
the "beginning of time" for that account to reconcile the validity of
that value. In other words the audit log is completely verifiable.

The trouble is that most of the sentences that contain the word "one"
are written in the passive voice. Reconstructing these sentences into
active voice and eliminating the word "one" can be time consuming.
When publishing a book, an editor would quickly catch these and help
you rework them. But with your time constraints it may not be worth
reworking them at this stage. Instead, simply be aware of it. As you
write further, your awareness will help prevent future occurrences.

Also be aware of the difference between “insure” and “ensure”. You
insure a car whereas you ensure transactional integrity.

Lastly I would point out your use of Hungarian notation in your
database schema. Usage of "pk" to denote a primary key and "fk" to
represent a foreign key are a little dated—similar to prefixing
everything with “str” in code. Dropping those prefixes is quite
liberating, although it may take a few days to get comfortable with
the idea. Table names should also be plural nouns, e.g. “Aggregates”
rather than “Aggregate” because a collection is being represented.

Rinat Abdullin

unread,
Apr 13, 2010, 3:44:22 AM4/13/10
to DDDD Review/Discussion
+1 for the fk and pk. This made me twitch.

Rinat

On Apr 12, 2:46 pm, Jonathan Oliver <jonathan.s.olive...@gmail.com>
wrote:

Reply all
Reply to author
Forward
0 new messages