When I tell people I'm writing a book, I'm often asked how I like it. The process is long and can be frustrating, but it can be exciting too. I'm writing a new book now, on Oracle GoldenGate. I'm somewhat new to Oracle GoldenGate, but I've collected a number of contributors and I have also brought on a great technical editor to work with me. In the end, I know this is going to be an awesome book!
I thought I'd blog a little bit along the way as I write the book. I'll also blog about some things related to GoldenGate as I come across them. I'll share my writing moments, and the things I learn and experience along the way.
Before you start writing a book, there are a few hoops you have to go through. First, you put together the proposal for the book. The proposal tells the publisher about the book, who the audience it, why the book will sell, how big the book will be and so on. Along with the proposal, you also submit an outline that includes a table of contents, title and length of each chapter, and so on. The publisher takes all of this information, does a quick calculation to determine if they think they can make any money on the book and then decide if they will publish. This process may take 2-3 weeks if your an established author, with a book idea that clearly makes sense. If you are a new author or the book idea is not as straight forward then the process may take longer as the publishing world wants to make sure they are not going to loose money on the deal.
Having agreed to the basic terms of the book, the publisher will then have you sign a contract for delivery of the book. Typically this outlines how many pages and general content that will be in the book. It also will outline payment of advances and royalties that you can expect to be paid on your book. Once you sign the contract, you are on the writing trail.
I strongly advise prospective authors not to start writing until you have a contract unless your plan is to self-publish if you can't get someone to do it for you. I've seen what seemed like certain deals fall through at the last minute, and I've seen other authors start writing and then regret it because the deal fell through. So, if your going to write, make sure you have the contract signed.
When you start writing, the publisher is going to want you to write to a specific template/format. Generally they will send you a Word template (or whatever editor they want you to use) that will have specific formats for various parts of your book. With Oracle Press, I have a MS Word template they sent me. I simply plug it into my Word document and I'm off to the races.
I've written a couple of chapters in the book so far. As I said, GoldenGate is a fairly new product for me, but I actually think that makes my writing better. First, as I write the chapters, I see this material from the point of view of my reader, typically someone who is new to the product. I think this helps me write content that helps the new person, and I also think that it helps me see the pitfalls that might beset them.
For example.... when you are using GoldenGate, you need to enable what Oracle calls supplemental logging. Supplemental logging causes Oracle to record additional information about a transaction in the redo stream. GoldenGate needs this additional information to properly replicate data changes over to target databases. Now, to enable supplemental logging you can use the GoldenGate interface called GGSCI, log into the database and then use the command add trandata to enable supplemental logging for a specific table or set of tables. If you look in the documentation it seems as easy as doing that once everything is setup. However, there is a bit of a gottya it seems in that the documentation (in as far as I've been able to find) is missing one bit of crucial information. This has to do with permissions. It does not seem to note anywhere that the GoldenGate administrator account that you log into needs to have the alter table privilege.
Oh, maybe it's hidden in there somewhere and I have not found it yet, but that is just my point. I had a hard time finding it. Now, if I was an old GoldenGate expert, like my technical editor is, then I might have missed that subtle point. Because I'm somewhat new to it, I catch things like this and actually put them in the book... as notes or as a part of the overall text, they are in there. I think that is part of what makes my books good (I say this with all humility).
I also realize that by being new, I do miss out on some points-of-view that someone with more experience in the product might have. I try to deal with this in several ways. First, like I said, I have an awesome technical editor. He and I work hand in hand during the process, and truthfully, I use him more that most people use their technical editors. He catches things I might have missed, things I might have mis-understood and is there to help me with answers to questions.
I also bring on experts as contributing authors. I really do like to share in the success of a book and give others opportunities to be a part of the process. Writing a technical book will not make you rich, but it does give you credentials in the professional world. It looks good on a resume and can certainly help your career. As a leader and mentor, I like the people who work for me, or with me, to come with me on writing adventures so they can benefit from the experience. I also like having people I know on projects, because I know who they are and their work ethic. I also will bring on an expert or two, as a contributing author, for more advanced chapters either as the sole author of those chapters or as a major contributing author to those chapters. This way, the advanced chapters get the instant experience of someone who has a few hours of experience with the product and some time in the trenches.
In the end, this approach to book writing seems to work really well. I hope it will work as well with the GoldenGate book.
Next time I'll blog more about the writing process and the editing process. Sometimes the editing process is the hardest part of writing....