After months of labour, the arrival of new family members for a couple of the authors the Implementing Oracle API Platform Cloud Service book as finally been published. The book has been included into Packt’s Expert series so, earns(?) the privilege of having photos of the authors on the cover. The book can be purchased directly from Packt (go here) or from book retails such as Amazon (here).
It has been an interesting experience. Whilst working as part of a team of four authors lightened the writing load, a lot more energy went into communication so things were lined up. If you want a challenge, why not read the book and try to work out who wrote which chapters!
I’ve been reading Chris Richardson’s new book Mixroservice Patterns published by Manning (here or here). Whilst I haven’t finished the book yet, I have read enough to feel I can provide worthwhile observation.
The book is supported by Chris’ website microservices.io which provides the patterns and related content in summarised form – great for a memory jogger and quick reference, but doesn’t make a substitute for the book.
When it comes to the book, Chris’ writing is extremly engaging whilst economic with its language – no long passages when a short sentence can convey everything necessary (unlike this one for example 🙂 ). For example, in three short paragraphs is an explination as to why there is a tendancy for IT people to point at particular technologies or techniques as silver bullets. As a result is incredibly informative and points to sources that inform the thinking – such references can be as diverse as Sam Newman’s Building Microservices to the (real) architect Christopher Alexander and Jonathan Haidt (The Righteous Mind).
The book is grounded in honest real world thinking being upfront and clearly pointing to when Microservices aren’t the right answer, to talking about the difficulties that can be expected in working with microservices. This won’t surprise anyone who has heard Chris speaking (here for example).
A recommended read.
I have been wading through Eric Evan’s Domain Driven Design Book. As with many design and architecture focussed books I try to mindmap as I go so I have a quick reference resource. The mindmap for this book can be seen below and is linked to the WiseMap version which is dynamic.
In terms of of a review of the book, it contains lots of nuggets of helpful ideas and information but it is a rather heavy going to read. Some points feel over laboured such as the use of consistent language, at times it feels like half the book is dedicated to this one point. Whilst Chapter 14 – Maintaining Model Integrity sounds unadventurous as a chapter, I found this to have a lot of really helpful content such as going into the details Bounded Contexts and so on which is highly relevant to the world of microservices.
When it comes to ensuring I keep up good practises, I try to look at books in areas I think I have a good handle on such as APIs. Why? well it confirms and validates I’m upto date; sometimes another view point can spark ideas on how to make something better, improve an approach or simply understand another way of explaining an idea. The later is important as the key benefit of knowing something is the opportunity to help someone else. Not everyone communicates or understands ideas in the same so this is always helpful.
So recently I ran through James Higginbotham’s Designing Great Web API’s book(let). Often when goping through a book I mindmap it so that I can share it, and refer to it as a lit of prompts reminders if necessary. Whilst’s James’ book doesnt reveal anything new or relevatory for anyone working with APIs it does provide a good succinct explination to basic practises. So here is the mindmap:
Now the big news, we have just agreed with Packt Publishing to write a book around Oracle’s new API Platform Cloud Service (APIP CS). This is going to be more of a team effort with 4 of us working on the book. With all the authors working for Capgemini as well it should be a lot easier in terms of effort The book is being targeted for late this year to be published so that we can cover the major features being released this summer which will make the product a lot more rounded and complete.
The book will also bring in another initiative that has been running in a fairly low profile manner, but starting to shape up in the form of something called OMESA (OMESA.io). This initiative is a cross party approach to define a reusable reference architecture that engages both the legacy landscape along with API driven / microservices based contemporary solution delivery.
We will of course continue to blog about ICS at https://oracle-integration.cloud
Recently I’ve given some time over to catching up on some reading. Which has included Walter Isaacson’s tremendous book Innovators. I picked this up more because I liked Walter’s approach to the Steve Job’s biography. I thought this was going to be more focused on individuals and how they brought through new technology innovations. But actually it is a very good potted history of the development of modern computing. Whilst I work in IT and thought I knew key contributors, from Babbage, Lovelace to von Neumann and Turing. I was rather surprised at how many signficiant contributors I didnt know, or only vaguely aware of. For example the work of Douglas Engelbart who pretty much lead the design for the mouse. What about Vint Cerf who made key contributions to TCP/IP? Stephen Crocker who was responsible for the RFC that we all associate with the IETF now?
Not only is the history interesting, the book looks at the dynamics of innovation and how much innovation comes from the individuals working away on their own and having a eureka moment compared to that constant dialogue between people which sounding off each other lead to new ideas? The later is beautifully illustrated with the development of the transistor and the work of John Baarden and Walter Brattain. It’s interesting that as the history moves into the pre-internet era that more and more of advancements are a result of collective effort, but also recognised as such. I wonder whether that is because technologies made collaboration easier, or the effects of socio-cultural developments that meant people recognised the collaborative efforts?
I’d recommend this book to anyone who is interested in IT has developed or even just interested in the interplay of personalities and events such as World war II that influenced scientific advancement.
When I read a technical book from cover to cover I usually build a mind map so that I can use it as a memory jogger in the future if I need to return to get key points such as arguments or facts. With the ferstive break I have had time to finish reading Sam Newman’s Building Microservices. The following is a static image, but clicking on it can take you the dynamic site provided through WiseMapping, it does take a moment or two as the map is large (or click here).
Many of the points made in this excellent book are true to software design and development generally, but given a Microservices spin. For example, monitoring and security should be incorporated into any good design.
We have just supplied our publisher with the final draft of the final chapter in our book about Oracle Integration Cloud Service (ICS). Before we get too chilled out waiting to see the printed article as Packt Sort out the final publishing I thought it might be helpful to share some observations from our experiences.
Let’s start with some background. I have been acting as a peer reviewer for Packt for some years now, and in fact Packt had approached me in the past to write a book, however I had declined their proposals as I didn’t want to write on a subject that people had already written about. So when I was introduced to ICS, this felt like a good subject to write a book on, certainly represents something that it is going to have a significant future and deserved a book to help people get beyond a basic user guide.
Choosing to write a book is not a small undertaking, so make sure you’re going to do this for the right reasons. Let’s be honest, very few books make much money. You have to be lucky, writing a subject you know us going to be game changing (think Gang of Four and Thomas Erl) or have a definitive text on the next big thing that everyone will use. Publishers also run promotions, discounts and give aways, some more than others, but that will all eat into you share, not to mention unless you self publish or you’re a rock star author you will not see big percentage royalty rates coming your way.
So first steps, for us was to get a publisher on board, given it was an Oracle product I wanted to talk to Oracle Press (or here) first which is run by McGraw-Hill. They weren’t too sure about the idea, having not been successful with previous cloud books. So we went back to Packt, they do have Oracle based books, and I had a relationship there.
With some initial positive feedback, I needed to get things moving. Thinking through this I concluded that the entire book alone could be a lot of very hard graft when working with a new product and I didn’t have the access to the same level of resources working for a customer organisation as you can with an Oracle partner company. So I needed a co-author who was involved with ICS, and ideally working for an Oracle partner. I had seen Robert van Mölken blogging about ICS, and working for AMIS suggested he would be a very capable person, not to mention AMIS is a respected partner. Robert has shown himself to be more than capable, and getting him signed up to the idea was a good call.
Next, was to start properly developing the idea, which means chapters, subheadings, and book introduction. Very quickly the chapters and subsections where finalised, along with our approach to the examples. I was very keen that the examples where routed in plausible scenarios and that would help the ideas without getting caught up explaining the detail. Not to mention the examples should feel less superficial. Additionally, we have recognised that a book about a cloud solution means that things will move far faster than something that is deployed on-premises, so how we approach this book needs to hold true and relevant even if there are new features and aesthetic changes for a good while.
We divided the work up between us, I think Robert in hindsight took on the more troublesome chapters, in so far needing to understand more social APIs. So when plotting out the division of work, also think about the technical challenges you might have and need to explain. Whilst you won’t have this in perhaps a ‘hello world’ level of functionality when you past this effort builds up, if you’re working on a cookbook it may we’ll be an important factor.
Our original goal had been to publish in time for Open World. But the realities of a job, both of us being active with events such as user groups meant these things would eat into the available writing time as demos, presentations would also need to be written. We also uncovered a couple of bugs that delayed things, both in waiting for the patch, but also confirming that what we where seeing was a bug, and not an issue of understanding.
In hindsight I think perhaps we should have done more work during the planning to build the example scenarios. There is no doubt that planning before actually writing makes a significant difference. It would have given us more time in working through the questions and challenges. The risk would have been that it would have been a lot longer before we actually produced some content, and there is certainly something psychological about getting those initial chapters written.
During the core writing phase Robert and I would gave weekly call to catchup, it meant that we could discuss the chapter scenarios, details, and assumptions that meant we were aligned. Whilst not necessary, and this could be done be email, a short conversation was a lot easier and it helped keep focus. Not to mention probably reduced the differences in writing that can occur with different authors.
When comes to the writing itself I found the clearer my thinking was on the specific points I wanted to convey the easier the writing became and the writing of the chapter just flowed. The question I still haven’t really answered in my own mind is whether I should have been a lot more attentive to the formatting the publishers wanted us to adopt, applying it retrospectively took a couple of passes as you would spot something that had omitted the correct style. But diligently applying the right styles would have been disruptive to the writing style.
We found that most chapters overran the page count by about 10%-15% the publisher was pretty cool about this – they definitely agreed a good book over a book that was edited to a specific length was most important. We can put the over run down largely to the fact we didn’t allow for the formatting of the page, which meant more white space that we had anticipated, plus in the drafts we needed to put additional publication notes in such as references to the images being used. It is worth looking at this before finalising your chapter lengths.
The last thing we did during the writing of the 1st drafts was reviewing each other’s work before submitting the chapters. This probably helped a lot in so far as Robert would often pickup on issues with my screenshots and I would tend to finesse wording – when you write in a more conversational style those little quirks of speaking can come through.
Completing all the chapters in 1st draft felt pretty satisfying, and certainly a morale boost as we had overrun our original estimates, as it meant we where we we’re well over 50% complete, probably nearer to 75% complete in terms of effort. In the contract with Packt this was also the 1st milestone for the advance, which is a long way into the process and the payment has yet to be received. Some of this delay has been organisational, but things don’t happen quickly on that front.
Before we started the project one of the Oracle Ace Directors we knew provided some observations, suggesting that each page will probably take a couple of hours to write. I have to admit to being a little sceptical of this as it would mean roughly a year of writing every evening for both of us if you look at it from an elapsed time it isn’t so far from the truth. If you look at the actual effort, those weeks where I was just working on the book rather than presentations or work demands. I think it would have been fair to suggest about 8-12 hours of effort went into the book each week which is about 450 pages in length. In the end I think we probably where writing at twice that speed if you measure effort from 1st to last draft.
Second draft is about addressing the review feedback from the peer reviewers. For us that was pretty straight forward,the feedback we received was very positive and making suggestions on how to improve things. As we wrote about a cloud product that is developing and improving quickly we needed to double check the screens hadn’t changed. We did see 1 challenge in the reviewing. We wrote the Preface to help provide context to the book, but I didn’t get sent before the 1st chapters went to review some comments as a result perhaps weren’t so intune with the books underpinning goals. Should the reviewer need to have had the preface first, debatable. We took advantage of this lesson, to reduce the dependency on having read the preface.
Most changes where about fixing formatting, then adding a couple of additional screenshots and some clarifying text. Each chapter probably only needed 1 additional paragraph per chapter. So working through this was pretty quick. Then it has been over to the publisher to finishing things off and assemble the book.
Going forward, we will continue to write additional material, initially for the blog (oracle-integration.cloud) but we are exploring the idea of a living book where the book version will undergo quarterly updates. But time will tell as to whether this makes a difference.
The book can be found at:
We have taken our book on ICS into Packt Publishing’s Alpha programme so that if you order the book now – you can see the chapters as soon as they have received editorial approval and the complete final book will be made available to you as soon as we’re have addressed all the feedback, made any final improvements we have identified once we have completed the book’s draft.
The book can be found on the Packt website – here
Details about the Authors from Packt can be seen at:
- Phil Wilkins
- Robert van Mölken