Working on large book projects is something I’ve had occasion to do a lot over the last 25 or so years (yikes!) The Office 365 for IT Pros book is unique not only because it gets monthly updates, but also because of the way we do annual revisions.
Here’s how the sausage gets made.
Scheduling Progress
First, let’s talk about the schedule. We release each year’s edition at the beginning of July. That’s a hard deadline that we’ve all agreed to. So starting in March-ish, we meet as an editorial team to decide whether we need any structural changes to the whole book. This usually results in some good-natured argument because even with a 1200+ page book we can’t cover everything that Microsoft does. We have to choose what to include and what to skip. In past years, we’ve had these discussions at the MVP Summit in Redmond. Unfortunately, you all know why that wasn’t possible this year!
When Microsoft adds a major new workload or feature, that’s a good candidate for inclusion. If they deprecate or replace something, that’s a good candidate for a drop. But sometimes we have to make judgment calls. For example, the Exchange ActiveSync coverage from the clients chapters was relegated to the 2021 companion volume because in a world that has Intune and M365 MDM, it’s just not that important any more. We went through a similar process when Exchange Unified Messaging died its sad and undeserved death.
Multiple Author Perspectives
Where things get interesting is that each author has a unique perspective on which parts of Microsoft 365 are most important, yet we’re all battling to keep the book to a reasonable size for readers. I might argue for adding or removing coverage in someone else’s chapter, and vice versa, and all those arguments have to be managed. Tony is a firm but fair arbiter when we disagree over how much coverage to give any particular topic.
(side note: of course, since the book is really a two-volume book, and purchasers get both together, we get to keep interesting or useful material that’s not quite ready to be cut without adding unwanted bulk to the main book– something impossible to do with dead-tree books.)
Oh, yes– we also choose a title and a cover photo. But you’ll have to wait to see those, I think…. we have to keep some surprises.
Working on Chapters
So.. after we make the team decision on how the book should be structured, each of us goes off to work on the individual chapters we own. Each author has a free hand to decide what topics to cover in their chapters and how they’re structured. We work together to ensure smooth coverage; for example, in the clients chapter I talk about the importance of split tunnels for VPN connectivity, and Stale’s coverage of split tunneling builds on mine to flesh out more details in his chapters on Teams.
One of the big parts of the annual revision is improving the organization and structure. For example, the clients chapter for 2021 is completely restructured top-to-bottom, and the Intune chapter is too, to make them easier to read and more clear—and also to make it easier to add new content in the future. Because we update the text monthly, we often say things like “In November 2019, Microsoft changed the XYZ feature to accept Twinkies as payment” so that readers will notice the latest changes. By the following summer, that reference a) probably seems dated and b) is probably wrong because Microsoft changed things four more times since the original version. The annual refresh is a good time for us to clean up outdated dates and refresh the text to keep it relevant and technically correct.
The Goodness of a Technical Edit
Once each refreshed chapter is done (including new screenshots, line art, PowerShell code samples, and so on), it goes to our technical editor, Vasil Michev.
Vasil is too smart to waste time on Twitter, so he may not see me say this, but he has maybe the most critical job in the whole book: looking for errors, omissions, or problems with the text as written. Of course, each author is ultimately responsible for their own mistakes but Vasil does a superb job of finding small, and occasionally large, problems so we can fix them before print.
After the tech edit pass, the author gets the chapter back with embedded comments, which we then have to handle by fixing mistakes or typos, clarifying things, and so on. This is no different than any document editing you may ever have done. Depending on the size of the changes, this may be a simple matter of fixing a few typos or writing a chunk of new material to ensure coverage of something important.
At that point, the chapter is “done”. I put “done” in quotes because Microsoft is always changing the service, and just because we think the chapter is done at any point in time doesn’t mean that we can ignore Microsoft updates. It’s common for us to be making last-minute changes up until the day of the book’s release, although we try not to overdo it because of the overhead involved in building the complete book each time a chapter changes.
Tools We Use
As you might expect, we use the tools we write about– we use Teams as our operating environment, Planner to track task assignments, and so on. In fact, nearly the only parts of the book’s production and workflow that don’t depend on Microsoft are this blog (powered by WordPress) and our storefront, powered by Gumroad. This process is complicated a little by the fact that many of us are using pre-production releases of various Microsoft services, so we run into bugs, incomplete features, and so on more than you’d expect in a typical deployment… but that’s all part of testing and learning the service well enough to be able to write about it.
Towards the 2021 Edition
I’m excited about the 2021 edition, and we have a lot of interesting and useful new material in this edition. Just in my own chapters, here’s a partial list: better coverage of the Office Client Policy service, coverage of split tunneling for VPNs, more depth on how to manage Microsoft 365 using Endpoint Manager, an introduction to Azure Cloud Shell, a brand-new chapter on adoption, and coverage of the new Exchange PowerShell v2 cmdlets). To help you get the best possible value, we’re running a special promotion: buy the 2020 edition now and you’ll get the 2021 edition at no extra cost. As always, we’re looking out for previous buyers too– if you already bought the 2020 edition, we’ll be offering a solid discount on purchase of the upgrade to 2021.
We appreciate the support we have had from our subscribers and hope that you will continue that support with Office 365 for IT Pros 2021 edition!
One Reply to “Here Comes Office 365 for IT Pros 2021 Edition”
Looking forward to buying the next edition, this is some of the best money I have ever spend on a book. Reading it has helped me help my clients and has resulted in several career advancements that may not have happened without the knowledge I gained from your teams excellent ability to explain the advanced topics
{"id":null,"mode":"button","open_style":"in_modal","currency_code":"EUR","currency_symbol":"\u20ac","currency_type":"decimal","blank_flag_url":"https:\/\/office365itpros.com\/wp-content\/plugins\/tip-jar-wp\/\/assets\/images\/flags\/blank.gif","flag_sprite_url":"https:\/\/office365itpros.com\/wp-content\/plugins\/tip-jar-wp\/\/assets\/images\/flags\/flags.png","default_amount":100,"top_media_type":"featured_image","featured_image_url":"https:\/\/office365itpros.com\/wp-content\/uploads\/2022\/11\/cover-141x200.jpg","featured_embed":"","header_media":null,"file_download_attachment_data":null,"recurring_options_enabled":true,"recurring_options":{"never":{"selected":true,"after_output":"One time only"},"weekly":{"selected":false,"after_output":"Every week"},"monthly":{"selected":false,"after_output":"Every month"},"yearly":{"selected":false,"after_output":"Every year"}},"strings":{"current_user_email":"","current_user_name":"","link_text":"Virtual Tip Jar","complete_payment_button_error_text":"Check info and try again","payment_verb":"Pay","payment_request_label":"Office 365 for IT Pros","form_has_an_error":"Please check and fix the errors above","general_server_error":"Something isn't working right at the moment. Please try again.","form_title":"Office 365 for IT Pros","form_subtitle":null,"currency_search_text":"Country or Currency here","other_payment_option":"Other payment option","manage_payments_button_text":"Manage your payments","thank_you_message":"Thank you for supporting the work of Office 365 for IT Pros!","payment_confirmation_title":"Office 365 for IT Pros","receipt_title":"Your Receipt","print_receipt":"Print Receipt","email_receipt":"Email Receipt","email_receipt_sending":"Sending receipt...","email_receipt_success":"Email receipt successfully sent","email_receipt_failed":"Email receipt failed to send. Please try again.","receipt_payee":"Paid to","receipt_statement_descriptor":"This will show up on your statement as","receipt_date":"Date","receipt_transaction_id":"Transaction ID","receipt_transaction_amount":"Amount","refund_payer":"Refund from","login":"Log in to manage your payments","manage_payments":"Manage Payments","transactions_title":"Your Transactions","transaction_title":"Transaction Receipt","transaction_period":"Plan Period","arrangements_title":"Your Plans","arrangement_title":"Manage Plan","arrangement_details":"Plan Details","arrangement_id_title":"Plan ID","arrangement_payment_method_title":"Payment Method","arrangement_amount_title":"Plan Amount","arrangement_renewal_title":"Next renewal date","arrangement_action_cancel":"Cancel Plan","arrangement_action_cant_cancel":"Cancelling is currently not available.","arrangement_action_cancel_double":"Are you sure you'd like to cancel?","arrangement_cancelling":"Cancelling Plan...","arrangement_cancelled":"Plan Cancelled","arrangement_failed_to_cancel":"Failed to cancel plan","back_to_plans":"\u2190 Back to Plans","update_payment_method_verb":"Update","sca_auth_description":"Your have a pending renewal payment which requires authorization.","sca_auth_verb":"Authorize renewal payment","sca_authing_verb":"Authorizing payment","sca_authed_verb":"Payment successfully authorized!","sca_auth_failed":"Unable to authorize! Please try again.","login_button_text":"Log in","login_form_has_an_error":"Please check and fix the errors above","uppercase_search":"Search","lowercase_search":"search","uppercase_page":"Page","lowercase_page":"page","uppercase_items":"Items","lowercase_items":"items","uppercase_per":"Per","lowercase_per":"per","uppercase_of":"Of","lowercase_of":"of","back":"Back to plans","zip_code_placeholder":"Zip\/Postal Code","download_file_button_text":"Download File","input_field_instructions":{"tip_amount":{"placeholder_text":"How much would you like to tip?","initial":{"instruction_type":"normal","instruction_message":"How much would you like to tip? Choose any currency."},"empty":{"instruction_type":"error","instruction_message":"How much would you like to tip? Choose any currency."},"invalid_curency":{"instruction_type":"error","instruction_message":"Please choose a valid currency."}},"recurring":{"placeholder_text":"Recurring","initial":{"instruction_type":"normal","instruction_message":"How often would you like to give this?"},"success":{"instruction_type":"success","instruction_message":"How often would you like to give this?"},"empty":{"instruction_type":"error","instruction_message":"How often would you like to give this?"}},"name":{"placeholder_text":"Name on Credit Card","initial":{"instruction_type":"normal","instruction_message":"Enter the name on your card."},"success":{"instruction_type":"success","instruction_message":"Enter the name on your card."},"empty":{"instruction_type":"error","instruction_message":"Please enter the name on your card."}},"privacy_policy":{"terms_title":"Terms and conditions","terms_body":null,"terms_show_text":"View Terms","terms_hide_text":"Hide Terms","initial":{"instruction_type":"normal","instruction_message":"I agree to the terms."},"unchecked":{"instruction_type":"error","instruction_message":"Please agree to the terms."},"checked":{"instruction_type":"success","instruction_message":"I agree to the terms."}},"email":{"placeholder_text":"Your email address","initial":{"instruction_type":"normal","instruction_message":"Enter your email address"},"success":{"instruction_type":"success","instruction_message":"Enter your email address"},"blank":{"instruction_type":"error","instruction_message":"Enter your email address"},"not_an_email_address":{"instruction_type":"error","instruction_message":"Make sure you have entered a valid email address"}},"note_with_tip":{"placeholder_text":"Your note here...","initial":{"instruction_type":"normal","instruction_message":"Attach a note to your tip (optional)"},"empty":{"instruction_type":"normal","instruction_message":"Attach a note to your tip (optional)"},"not_empty_initial":{"instruction_type":"normal","instruction_message":"Attach a note to your tip (optional)"},"saving":{"instruction_type":"normal","instruction_message":"Saving note..."},"success":{"instruction_type":"success","instruction_message":"Note successfully saved!"},"error":{"instruction_type":"error","instruction_message":"Unable to save note note at this time. Please try again."}},"email_for_login_code":{"placeholder_text":"Your email address","initial":{"instruction_type":"normal","instruction_message":"Enter your email to log in."},"success":{"instruction_type":"success","instruction_message":"Enter your email to log in."},"blank":{"instruction_type":"error","instruction_message":"Enter your email to log in."},"empty":{"instruction_type":"error","instruction_message":"Enter your email to log in."}},"login_code":{"initial":{"instruction_type":"normal","instruction_message":"Check your email and enter the login code."},"success":{"instruction_type":"success","instruction_message":"Check your email and enter the login code."},"blank":{"instruction_type":"error","instruction_message":"Check your email and enter the login code."},"empty":{"instruction_type":"error","instruction_message":"Check your email and enter the login code."}},"stripe_all_in_one":{"initial":{"instruction_type":"normal","instruction_message":"Enter your credit card details here."},"empty":{"instruction_type":"error","instruction_message":"Enter your credit card details here."},"success":{"instruction_type":"normal","instruction_message":"Enter your credit card details here."},"invalid_number":{"instruction_type":"error","instruction_message":"The card number is not a valid credit card number."},"invalid_expiry_month":{"instruction_type":"error","instruction_message":"The card's expiration month is invalid."},"invalid_expiry_year":{"instruction_type":"error","instruction_message":"The card's expiration year is invalid."},"invalid_cvc":{"instruction_type":"error","instruction_message":"The card's security code is invalid."},"incorrect_number":{"instruction_type":"error","instruction_message":"The card number is incorrect."},"incomplete_number":{"instruction_type":"error","instruction_message":"The card number is incomplete."},"incomplete_cvc":{"instruction_type":"error","instruction_message":"The card's security code is incomplete."},"incomplete_expiry":{"instruction_type":"error","instruction_message":"The card's expiration date is incomplete."},"incomplete_zip":{"instruction_type":"error","instruction_message":"The card's zip code is incomplete."},"expired_card":{"instruction_type":"error","instruction_message":"The card has expired."},"incorrect_cvc":{"instruction_type":"error","instruction_message":"The card's security code is incorrect."},"incorrect_zip":{"instruction_type":"error","instruction_message":"The card's zip code failed validation."},"invalid_expiry_year_past":{"instruction_type":"error","instruction_message":"The card's expiration year is in the past"},"card_declined":{"instruction_type":"error","instruction_message":"The card was declined."},"missing":{"instruction_type":"error","instruction_message":"There is no card on a customer that is being charged."},"processing_error":{"instruction_type":"error","instruction_message":"An error occurred while processing the card."},"invalid_request_error":{"instruction_type":"error","instruction_message":"Unable to process this payment, please try again or use alternative method."},"invalid_sofort_country":{"instruction_type":"error","instruction_message":"The billing country is not accepted by SOFORT. Please try another country."}}}},"fetched_oembed_html":false}
Looking forward to buying the next edition, this is some of the best money I have ever spend on a book. Reading it has helped me help my clients and has resulted in several career advancements that may not have happened without the knowledge I gained from your teams excellent ability to explain the advanced topics