Since I transitioned to training (and loving it), I've been pondering how best to have multiple people work on presentation decks at different times just like one does with source code. PowerPoint being a "binary format" doesn't really allow for this. Yes, there's the built-in Compare & Merge functionality, but in practice it really has not worked out well for me. Testing this out with PP for Mac 2011 on multiple presentations resulted in EVERY SINGLE slide being declared as modified. It has promise, but simply doesn't deliver for me. If you've had better experiences, please leave a comment below as I would be glad to give it another chance.
Ultimately, the best answer would be to embrace a version control friendly source file format like Markdown that can then be used to generate the final (aka "pretty") presentation. There appear to be several good options that can build HTML5 presentations from Markdown, but my new team is committed to using PowerPoint and I cannot find a converter/transformer to handle this.
I'm dreaming of something like seen in Creating slides from simple Markdown text whose example source file (raw and GitHub transformed) ends ups with a generated slide deck that looks pretty nice. Unfortunately, that solution only takes me to a PDF deck, not a PPT one.
I did investigate PowerPoint coauthoring with the presentation being saved on OneDrive and shared with two users, but ultimately that's not much more than SharePoint's very old model of versioning and just not very helpful. I even got pretty excited by importing the PPT into Google Slides so that I could leverage their promising visual difference markup across multiple editors, but it has some showstoppers for me as well such as the inability to collapse and rename versions, not being able to compare different from/to versions and ultimately their control of deciding how many versions to keep around. Again, promising, but just not close enough.
For my testing, I used the following example "old" and "new" PowerPoint preso pair. Links to the full deck and video of my presenting with it can be found by visiting my presenting at hadoop summit (archiving evolving databases in hive) blog posting.
Original Presentation (Ver A) | Modified Presentation (Ver B) |
---|---|
Ultimately, I stumbled across Compare two versions of a PDF file that sounded like it might have legs. Basically, it would mean that my process would look like the following.
- When ready to start, copy the original file and give it a new name (ex: the commonly used version number in the file name would work great).
- Once complete, use Adobe Acrobat Pro DC to create PDFs of the before and after presentations (we want to give the PDF compare functionality the best chance to be successful, so don't just use PP's "Save as PDF" option).
- Use Acrobat's "Compare Documents" feature to determine what changed.
The following video tutorial shows what this looks like in action.
Here are the generated "diff PDFs" for each. The video tutorial above shows how you can look at these in a side-by-side manner.
Original Presentation's Perspective | Modified Presentation's Perspective |
---|---|
Yep, this has MANY flaws, not the least of which is that is doesn't account for concurrent authoring, but it is the best solution I have right now for a problem that is attacking me and I'm going to give it some more cycle to see if I can leverage it. I'm even hopeful I can automate some of it instead of being a manually intensive effort to see the results.
As I said earlier, if you have a better solution to this general problem, please share in the comments below. In the meantime, I'm going to give this the old college try (maybe even try to automate it!).
I continue to have a blast working working at Hortonworks and enjoy growing my Hadoop & Big Data skills while working on interesting projects that can leverage the bleeding edge technology that supports these efforts. I joined at the beginning of 2013 and have worked in our Professional Services (aka Consulting) team since then. Again, it has been a blast!
One of the big reasons I joined Hortonworks over another comparable opportunity was that I thought I had a better chance to participate in training again. Back at the "turn of the century" I had a chance to train Java developers and system administrators on the Epicentric portal platform (see... that was a long time ago as NOBODY talks about portals anymore!) which later got acquired by Vignette (now part of OpenText) - yep, another name from the past. I also had a chance to build a bootcamp curriculum at HP for a next-gen app framework we were advocating at the time. I got a chance to deliver it several times, including a fun trip to Galway, and then to scale it by running some TTT (train the trainer) sessions.
Again, I love our consulting team, but I really wanted to find a role in the training organization and back in mid-August I finally got the chance!! I've even got a fancy title out of the deal; I'm the "Manager, Training Platform & Content Engineering", but those close to me know that I'll answer to most anything.
The new role is primarily focused on "content engineering". That's a fancy name for curriculum development, but I actually have been able to join the team during a time when there was a strong demand on the trainers and I've mostly been out on the road teaching classes from our Hortonworks University offerings. This has been great as it has let me see first hand what state our courses are currently in and allowed me to build up some ideas of my own (and hear from other instructors as well as students) as to what TNG offerings should look like.
Anywho, I've just been so busy getting my feet wet that I've had trouble finding time to blog. I hope to correct that soon enough and to share some experiences from my new role.