The Problem
I wrote a long, 20+ detailed whitepaper on a topic applicable to an education technology niche. The audience was the executive level of a non-profit governance organization of a data and technology standard. The executives have different roles, and therefore different levels of technical knowledge. I knew that if I paired the 20+ detailed whitepaper with a high level, executive summary slide deck, the information would be more accessible and therefore more widely consumed.
The paper is the input to the process of developing this executive summary slide deck. It seemed like exactly the scenario where an LLM could help. Defined input, defined output, and pretty standard process from input to output.
But, this one is labeled a "war story" not a "case study", so you already know it did not go as well as expected...
What I Tried
Google NotebookLM
Result: Fail (mostly)
Google NotebookLM - beautiful and very smart content selection, but entirely un-editable! Even the most minor of inappropriate wording invalidates the entire product
I attempted to use an online PDF to PPT convertion tool on the NotebookLM created PDF, as the modifications I wanted to make were minor. Unfortunately the conversion degraded or lost aesthetic items that made the NotebookLM presentation look great.
Google Gemini and Gemini for Google Workspace
Result: Embarrassing Fail
Gemini was perhaps the most humorous interaction.
With Gemini (chat), I asked it:
Please use the attached Google Slides template to generate a Slides presentation for an executive summary of the attached Google Docs paper. The audience is the executive leadership of the Ed-Fi Alliance. Depending on each person's role, they have different levels of technical expertise, so the slides need to be accessible. You may ask clarifying questions before beginning, if needed.
It proceeded to respond inline in the conversation with a description of each slide I should create manually. Confused, I asked:
Are you unable to create the Slides deck?
Gemini:
That is a great question! I cannot directly generate or export a binary Google Slides (.gslide) or PowerPoint (.pptx) file for you to download. However, I can design the complete content and layout for the entire deck slide-by-slide.
Below is a presentation draft for your executive summary. It is structured to fit the template you provided, mapping the Ed-Fi technical evaluation to the template’s specific layouts. You can copy this content directly into your template.
Bizarre. I looked at Gemini for Google Workspace, as it does seem like Google's AI capabilities are oddly fragmented (Google NotebookLM seems to be unaware of Google Apps products, Google Gemini thinks it would have to produce Google Slides "binaries" rather than interface with Slides directly or via AppsScript). Overall it seems apparent that the NotebookLM team is separate from the Gemini team which is separate from the Gemini for Google Workspace team, and they don't talk to each other or align their strategy.
So it seemed reasonable that possibly Gemini for Google Workspace might be able to work with Slides when the other Google AI products can't. Indeed, Gemini for Google Workspace does appear to be able to generate Slides content, but it looks to be limited to one slide at a time rather than the "create a presentation from this Google Doc" use case.
Presentation-specific AI Apps
Result: Confused
Slidespeak - dumber content selection and hard to tell what the output would be, because even with "credits" remaining you you can't open in PPT or even as a PDF without upgrading to a Pro account ($30/month)
I briefly tried Canva, but despite landing on Canva from a "create your presentation with AI" search result, the interface was wide open and it was not clear what I was supposed to do as a workflow. I played around a bit and then moved on.
Claude
Result: Surprising success (mostly)
Frustrated, I asked Claude what options I have for creating a powerpoint from the doc I had already been working with it on to produce an executive summary section.
What are ways for me to generate a Google Slides or PowerPoint executive summary with attractive graphics?
My expectation was to use Claude as a glorified search engine, helping me to discover options and think through ways to get this done. It did provide options, one of which -- to my surprise -- was for it to produce the slides for me. It provided other options, but recommended I let it do the work.
Here are your options for creating an attractive presentation:
## Option 1: I Can Create a PowerPoint for You (Recommended)
I can create a PowerPoint file with professional design, graphics, and visual elements. This would include:
- Slide layouts with visual hierarchy
- Icons, shapes, and diagrams (like the Venn diagrams from your document)
- Comparison tables or charts
- Color-coded scenarios
- Professional formatting
I'd use the pptx skill to build this. Would take ~5-10 minutes of back-and-forth to get the design right.
**Pros**: Full control, custom graphics, can iterate on design
**Cons**: My design aesthetic is good but not designer-level; limited to what pptx libraries can create
## Option 2: Upload to Google Slides + Manual Enhancement
1. I create a basic PowerPoint
2. You upload to Google Slides (File → Open → Upload)
3. You enhance with:
- Google Slides templates (Explore → "Suggest a layout")
- Insert → Diagram for flowcharts
- Icons from Insert → Icons
- Your company's template/theme
**Pros**: Combines my content with Google's design tools
**Cons**: Requires manual work from you
## Option 3: AI Design Tools (External)
Create the presentation with specialized tools:
- **Gamma.app** - AI presentation generator (paste text, generates slides)
- **Beautiful.ai** - Smart templates that auto-adjust
- **Canva** - Large template library, easy customization
**Pros**: Professional designer-quality output
**Cons**: Requires external account; you'd need to input content manually
## Option 4: Template-Based Approach
1. I create PowerPoint with your content
2. You download a professional template (GraphicRiver, SlidesCarnival, etc.)
3. Copy content into template slides
**Pros**: Very professional look
**Cons**: Most manual effort
## My Recommendation
**Start with Option 1** (I create the PowerPoint). I can include:
- The Venn diagrams from your document
- A comparison table for the 4 developer scenarios
- Architecture diagrams showing both approaches
- Visual flow of the evaluation methodology
Then you can either use it as-is or enhance it with Google Slides' built-in design suggestions.
**Would you like me to create a PowerPoint deck?** If so, any preferences on:
- Number of slides? (I'm thinking 6-8 for an exec summary)
- Color scheme?
- Level of detail per slide?
I told it to go ahead. The approach it took was:
- Read the pptx skill for best practices creating PowerPoint presentations
- Read html2pptx library documentation
- Read some CSS documentation
- Extracted the html2pptx library
- Wrote a CSS theme
- Wrote 7 HTML files
- Wrote a JavaScript script to generate PPTX slides from the html
- Ran the script
- Detected various errors
- Fixed the HTML accordingly
- Ran the a few more times, read error messages, and fixed. Example: realized the content in one of the slides was too long, so changed it to concise bullets.
- To QA visually, it decided to run a process to convert the slides to PDF and then the PDF to JPEG images. It then inspected the JPEG images to ensure the visuals of the slide were acceptable. (Conversion from PPTX to a more standard format makes sense. It's not going to be able to reliably render a PPTX file the same way PowerPoint would. But it's interesting that it chose to convert from PDF to JPEG. It must be simpler for the LLM to "visualize" the slide as a JPEG than a PDF.)
Here's the CSS:
:root {
/* Double Line color scheme */
--color-primary: #0066B3; /* Blue from template */
--color-primary-foreground: #ffffff;
--color-secondary: #8DC63F; /* Green from template */
--color-secondary-foreground: #ffffff;
--color-accent: #FFD100; /* Yellow accent */
--color-accent-foreground: #1d1d1d;
/* Surface colors */
--color-surface: #ffffff;
--color-surface-foreground: #1d1d1d;
--color-muted: #f5f5f5;
--color-muted-foreground: #5a5a5a;
--color-border: #d0d0d0;
/* Typography */
--font-family-display: Arial, sans-serif;
--font-weight-display: 700;
--font-family-content: Arial, sans-serif;
--font-size-content: 14px;
--line-height-content: 1.5;
}
Here's the JavaScript file:
const pptxgen = require("pptxgenjs");
const { html2pptx } = require("./html2pptx");
async function createPresentation() {
const pptx = new pptxgen();
pptx.layout = "LAYOUT_16x9";
pptx.author = "Double Line";
pptx.company = "Double Line";
pptx.subject = "Building AI Apps with Ed-Fi";
pptx.title = "Building AI Apps with Ed-Fi - Evaluation of Two Approaches";
// Add all slides
await html2pptx("slide1.html", pptx);
await html2pptx("slide2.html", pptx);
await html2pptx("slide3.html", pptx);
await html2pptx("slide4.html", pptx);
await html2pptx("slide5.html", pptx);
await html2pptx("slide6.html", pptx);
await html2pptx("slide7.html", pptx);
// Save presentation
await pptx.writeFile("/mnt/user-data/outputs/EdFi_AI_Executive_Summary.pptx");
console.log("Presentation created successfully!");
}
createPresentation().catch(console.error);
Ultimately, this is what I wanted. Claude's first output was okay; not perfect, not as good as Google NotebookLM's PDF (if I could edit it). But I finally have a vehicle through which I can iterate on the presentation. I would have settled for getting 50%+ of the way there automatically and then manually completing the deck. But in this case, Claude has shown it can create PowerPoint slides, which means I can provide feedback until we get to 90%.
Claude's awareness of available tools (or perhaps the actual tools available to it) appears to be much greater than Gemini.
The Breakthrough
In this case, the key insight was... continuing to try different LLMs.
This seems like a great example of Ethan Mollick's "jagged frontier of AI". Despite using LLMs often, and regularly conducting LLM Psychology Experiments, I am still unable to reliably predict what tasks they will do well. In this case, the experience of Gemini and Claude was wildly different, with Gemini seemingly unable to come up with the HTML→html2pptx->PPT.
I asked Claude about its process, and it turns out that it all comes down to a skill file available to Claude. It's a publicly available SKILL.md file with an onerous license, that perhaps prevents other LLMs from easily replicating the solution (but the license seems tough to enforce, outside of direct copying, since it is just packaging instructions on how to use publicly available libraries).
The skill is essentially condensed expertise from many trial-and-error cycles. Someone at Anthropic (or working with Anthropic) spent significant time figuring out:
* What works reliably with html2pptx
* What common mistakes to avoid
* What validation steps catch problems
* What design principles produce good results
By reading these files first (as instructed), I inherited all that hard-won knowledge before writing a single line of code.
What I'd Do Differently
I spent way too much time traveling down dead-end roads, and I had the wrong objective.
If I were starting over: - I would set success criteria more explicitly to be: find something wth an LLM that can support iteration (rather than trying to get to 50% and manually edit from there) - I'd timebox my effort with each approach - I would quickly try a new approach if one was not working
Lessons Learned
- Lesson one - Take more time defining what I want
- Lesson two - Be more aware of the jagged nature of LLM performance per task
- Lesson three - If an ecosystem (e.g. Google) appears jumbled with regard to a task, move on.
- Lesson four - Claude Skills are more powerful than I understood
