The Artima Developer Community
Sponsored Link

Weblogs Forum
Breaking Up The Monolith: coming at last

11 replies on 1 page. Most recent reply: Nov 14, 2010 6:12 AM by Matthew Wilson

Welcome Guest
  Sign In

Go back to the topic listing  Back to Topic List Click to reply to this topic  Reply to this Topic Click to search messages in this forum  Search Forum Click for a threaded view of the topic  Threaded View   
Previous Topic   Next Topic
Flat View: This topic has 11 replies on 1 page
Matthew Wilson

Posts: 145
Nickname: bigboy
Registered: Jun, 2004

Breaking Up The Monolith: coming at last (View in Weblogs)
Posted: Oct 22, 2010 6:31 AM
Reply to this message Reply
Summary
Yesterday, after four years of vacillation and procrastination and occasional modification, I finally got the preface of my next book, Breaking Up The Monolith: Advanced C++ Design Without Compromise, into a form with which I'm happy. Eight pages in four years; at that rate the full book will take me 150 years!
Advertisement

Obviously I'm planning on getting on with things at a much higher rate. In fact, I've got about 50% of it written already (although I'll doubtless re-work those parts for freshness).

Over the next few days I'll be talking to the editor and contacting all those kind, smart folks who've previously agreed to be a reviewer. As soon as things are sorted, I'll start posting what bits I can, probably starting with the book's Manifesto and Preface.

Watch this space ...


Roland Pibinger

Posts: 93
Nickname: rp123
Registered: Jan, 2006

Isn't it too late for a C++ book? Posted: Oct 24, 2010 7:19 AM
Reply to this message Reply
I don't want to discourage you but don't expect high book sales.

Nemanja Trifunovic

Posts: 172
Nickname: ntrif
Registered: Jun, 2004

Re: Isn't it too late for a C++ book? Posted: Oct 25, 2010 9:51 AM
Reply to this message Reply
> I don't want to discourage you but don't expect high book
> sales.

I don't have a crystal ball, but the design principles advocated here http://synesis.com.au/publishing/monolith/ make sense to me and I might buy the book once it is published.

James O. Coplien

Posts: 40
Nickname: cope
Registered: May, 2003

Re: Breaking Up The Monolith: coming at last Posted: Oct 30, 2010 10:47 AM
Reply to this message Reply
I'd be happy to help review the work. Good luck!

Matthew Wilson

Posts: 145
Nickname: bigboy
Registered: Jun, 2004

Re: Isn't it too late for a C++ book? Posted: Oct 30, 2010 7:13 PM
Reply to this message Reply
> I don't want to discourage you

No worries, you won't. :-)

> but don't expect high book
> sales.

I don't. Having said that, since the book will examine ways of successfully writing and working with C++ software libraries that balance important aspects of software quality - primarily efficiency, expressiveness and flexibility - it's arguable that it should appeal to all C++ programmers. Thus, the potential for sales is greater than it was with either of my earlier two books, both of which were either more advanced/subject-specific.

I can't remember the attribution, but I remember some great quote along the lines of if you write for an audience, the result will be weak and unappealing; if write for yourself, you'll create something you'd want to read and, by implication, so would others. I guess that sums up the philosophy of writing for me: I'm writing Monolith because I have to, because I believe I've something important to say and I feel compelled to share it. Bob knows it's not something one does for fun, or as a (direct, at least) way of making money.

Matthew Wilson

Posts: 145
Nickname: bigboy
Registered: Jun, 2004

Re: Isn't it too late for a C++ book? Posted: Oct 30, 2010 7:15 PM
Reply to this message Reply
> > I don't want to discourage you but don't expect high
> book
> > sales.
>
> I don't have a crystal ball, but the design principles
> advocated here http://synesis.com.au/publishing/monolith/
> make sense to me and I might buy the book once it is
> s published.

That's great to hear. Although it's coming in dribs and drabs, now that I've finally pulled my finger out I'm getting feedback through various channels that people want me to write it.

(Of course, their opinions may change once they can get hold of the contents ... ;-)

Matthew Wilson

Posts: 145
Nickname: bigboy
Registered: Jun, 2004

Re: Breaking Up The Monolith: coming at last Posted: Oct 30, 2010 7:18 PM
Reply to this message Reply
> I'd be happy to help review the work. Good luck!

I'd be honoured! Thank you.

I'll email you directly. Your cs.com address still good?

John Zabroski

Posts: 272
Nickname: zbo
Registered: Jan, 2007

Re: Breaking Up The Monolith: coming at last Posted: Nov 10, 2010 10:10 AM
Reply to this message Reply
Why not write the preface last?

Thanks for putting thankless effort into a book espousing good coding practice.

Matthew Wilson

Posts: 145
Nickname: bigboy
Registered: Jun, 2004

Re: Breaking Up The Monolith: coming at last Posted: Nov 10, 2010 3:03 PM
Reply to this message Reply
> Why not write the preface last?

Well, a formal proposal - which I still haven't yet done, after all these years - requires a Preface, the Table of Contents, and a sample chapter (or two).

Also, working out the TOC/Preface is very important to setting up the structure, form, even the style, of the book. Even though I've probably already written 50% of the material, the Preface can still have a marked influence on these characteristics. For example, James Coplien and Scott Meyers have recently given me some interesting, strong, and very valuable - though not, of course, wholly agreeable; "It's my book, and I can write what I like!" - feedback that has strongly influenced the form of the book.

What was a technical-topic-based breakdown of Parts:

* The Shim Concept
* The Type Tunnel Pattern
* The Principle of Intersecting Conformance
* Resource Management
* The Handle::Ref+Wrapper Pattern

Is now recast as in an "issue-based" breakdown (with order not yet fully fixed):

* Introduction
* Why C++ (which includes the specific "problems"):
- Hello, World
- Support Free Speech: Ban all the Dissonance!
- The Chevron Shemozzle
- The Erroneous Apprehension of Error, or What did I do wrong?
- The Logging Conundrum
- How To Be Yourself
- InCOMpatible Models
- Taming The SYSTEM
- Bulk Billing
- Big and Wide and Tall
* Abstraction
* Heterogeneity
* Conformance
* Failure
* Diagnostics
* Resource Management
* Performance Compromises
* C++0x
* Appendix A - Well-known Shims
* Appendix B - Type-Tunnel Incarnations

It is my hope that this change avoids the appearance of being a "tricks" book - one reviewer calls this the "Sumo Wrestler" effect - which it most certainly isn't! (IMO)

>
> Thanks for putting thankless effort into a book espousing
> good coding practice.

Thank you very much for your kind words of encouragement. As you observe, it's largely thankless (both in terms of human thanks and hard cash) and substantially self-driven, but having the occasional feedback from other people is invaluable.

John Zabroski

Posts: 272
Nickname: zbo
Registered: Jan, 2007

Re: Breaking Up The Monolith: coming at last Posted: Nov 12, 2010 6:54 PM
Reply to this message Reply
I didn't notice the irony in my thank you until just now :)

I didn't know publishers required a preface first. I know some publishers that (supposedly) explicitly look first for good authors on a subject they are knowledgeable about, and then let them work on the content. The preface is the last thing they worry about.

Not that I've ever published a book-length-anything!

I remember an editor also once explaining to me why she preferred the preface to be written last.

James O. Coplien

Posts: 40
Nickname: cope
Registered: May, 2003

Re: Breaking Up The Monolith: coming at last Posted: Nov 14, 2010 5:46 AM
Reply to this message Reply
I have written and published quite a few books and have never had a publisher ask me for a preface first.

The preface is certainly not the first thing I would write, but I do know that different authors have different styles. As an author, you grab on to anything that works and go with it.

And, remember: good writing is very anti-Lean. It is all about rework — Craft of Revision and all of that. Good authors pen a discovery draft before writing the deliverable. (I used to teach English composition, and this technique was central to most composition pedagogy of the time.) This preface might very well be the author's discovery draft. I suspect, and hope, that we will see this preface re-written a dozen times during the book's lifetime. I can only encourage Matt to not become overly attached to the current version. After all, an author should learn at least as much as his or her constituency does through the process of writing and publication. That process stands behind all great written works — including programs.

Matthew Wilson

Posts: 145
Nickname: bigboy
Registered: Jun, 2004

Re: Breaking Up The Monolith: coming at last Posted: Nov 14, 2010 6:12 AM
Reply to this message Reply
> I have written and published quite a few books and have
> never had a publisher ask me for a preface first.

Given the protracted nature of the birth of this book - 5 years+; interrupted early on by the preparation of XSTL - it's quite conceivable that I have misunderstood this to some degree. I'm going to check my emails over the coming days ...

Probably the problem is more that I've traditionally conflated my preface being as Scott has stressed again recently "about the book, not what the book's about" with "what the book's about": they've tended to be more a Preface+Intro/Prologue. (The first version of the "Preface" that you saw, James, was just such a mix; the newer version is more in line with what it should be.)

I do remember that with IC++ my editor had to demand radical rewrites of the Preface, which later became separated as a Preface proper and a Prologue. When I did XSTL he complemented me on having done it right. Now I look back on it, I wonder why I stuffed the Monolith one so much; perhaps it's because I started this book before XSTL.

For me, perhaps because I seem to see things a little differently (either that, or I'm just bad at research and referencing), I need to have a substantial Prologue/Introduction (in Monolith it's going to be Intro) in order to set up both the style and the axioms of the book. This has not helped me in writing smaller books in the past, although I can't imagine how doing it differently wouldn't result in even bigger books. (With Monolith I'm determined to be <350 pages; time will tell.)

> The preface is certainly not the first thing I would
> write, but I do know that different authors have different
> styles. As an author, you grab on to anything that works
> and go with it.

Now that I've done it, I'm glad I have. But next time - not that I ever want to write another "deep" book (famous last words?) - I will do it quite differently.

> And, remember: good writing is very anti-Lean. It is all
> about rework — Craft of Revision and all of that.

Experience painfully attests. :-)

> Good
> authors pen a discovery draft before writing the
> deliverable. (I used to teach English composition, and
> this technique was central to most composition pedagogy of
> the time.) This preface might very well be the author's
> discovery draft.

Agreed. And, yes, probably.

> I suspect, and hope, that we will see
> this preface re-written a dozen times during the book's
> lifetime.

Already had 14 versions ...

> I can only encourage Matt to not become overly
> attached to the current version.

Agreed

> After all, an author
> should learn at least as much as his or her constituency
> does through the process of writing and publication. That
> process stands behind all great written works — including
> programs.

Exactly. (And well put!)

While writing I end up asking myself every imaginable question about the subject matter. This usually results in my learning consciously and fully that which either (i) I happened along, partially, during practical work and/or (ii) things that I subconsciously "knew", imprecisely and without a traceable path of propositions.

I probably sound pretentious putting it thusly, but I do feel much afinity with artists - music, poetry, etc. - who suggest that they never feel to have created, but merely recorded something they tuned in on. For my part, I know my subconscious is a brilliant software designer, but I am merely a decent programmer who struggles along trying to precisely capture and codify what my silly subconscious concocts (while asleep, driving in the car, or, more usually, on my long morning bike rides).

Flat View: This topic has 11 replies on 1 page
Topic: The Decline of Facebook Previous Topic   Next Topic Topic: Practical Scala/Java interoperability by small examples


Sponsored Links



Google
  Web Artima.com   

Copyright © 1996-2014 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use - Advertise with Us