Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Pragmatic Way to Design Poetic Slides 🌻

Tirth Patel
April 27, 2024

Pragmatic Way to Design Poetic Slides 🌻

it's a meta talk i.e. how to write & design slides for a presentation. there are mainly 2 aspects of any talk (1) Slides (the designing) (2) Presentation (the speaking); this talk will focus more on the first one i.e. slides! It's a creative process and sky is the limit. It can take your presentation to another level. will also touch a bit on some useful presentation tips.

this talk will cover:
- need of a catchy title.
- a couple important animations of keynote (a presentation software).
- elegant ways to present source codes in the slides.
- importance of icebreakers (warm up) to start the talk.
- outro sections to wind up the talk.
- why memes and pop culture references are a nice addition.
- usage of images to demonstrate something crucial.
- using QRs for important links.
- etc...

I love writing & designing slides (prev work: https://speakerdeck.com/piedcipher), it's an art, and a topic close to my heart. I'm only a beginner myself (in terms of designing slides and presenting as speaker) but my observations, insights and tips will be valuable for new & budding speakers. I'm super excited!

Tirth Patel

April 27, 2024
Tweet

More Decks by Tirth Patel

Other Decks in Design

Transcript

  1. pragmatic way to design poetic slides 🌻 April 27, 2024

    3.30 pm team member at Flutter Org / SDK Contributor time is relative
  2. a talk consists of • but title fi rst! •

    icebreaker (warm-up & intro)
  3. a talk consists of • but title fi rst! •

    icebreaker (warm-up & intro) • softwares & animations (tools)
  4. a talk consists of • but title fi rst! •

    icebreaker (warm-up & intro) • softwares & animations (tools) • content (pre-requisites/toolchain/setup, structured sections, presenting source codes, images, memes/pop-culture references)
  5. a talk consists of • but title fi rst! •

    icebreaker (warm-up & intro) • softwares & animations (tools) • content (pre-requisites/toolchain/setup, structured sections, presenting source codes, images, memes/pop-culture references) • winding down (resources/further reading, inspirations/thanks, social- media plug, something witty)
  6. talk is about OSS + Flutter SDK • Getting Started

    with Contributing to Flutter SDK 👌👍
  7. talk is about OSS + Flutter SDK • Getting Started

    with Contributing to Flutter SDK 👌👍 • the other side of the coin: learning the art of contributing to Flutter SDK 🤩🔥
  8. talk is about Flutter + Gemini • exploring Gemini with

    Flutter ✌ • intersection of Pixels & AI - what's possible with Flutter & Gemini ✨✨
  9. ice breaker / warm up • mic-check & house-check •

    some tale related to the topic • agenda
  10. tale • talk is about Flutter & Gemini • wordplay

    or interesting things about tech
  11. tale • talk is about Flutter & Gemini • wordplay

    or interesting things about tech • example time… 🎨
  12. speaks 1 language, but builds for all, from phones to

    desktops, answers your call. Flutter - build once run everywhere
  13. agenda • lays out high level overview • tells about

    what to expect • example time… 🎨
  14. importance of images • showcasing crucial details • easier to

    connect for viewers • carbon.now.sh for code screenshots 🎉
  15. importance of images • showcasing crucial details • easier to

    connect for viewers • carbon.now.sh for code screenshots • example time… 🎨
  16. use cases • generate text from text-only input • generate

    text from text-and-images input (multimodal)
  17. use cases • generate text from text-only input • generate

    text from text-and-images input (multimodal) • build multi-turn conversations (chat)
  18. use cases • generate text from text-only input • generate

    text from text-and-images input (multimodal) • build multi-turn conversations (chat) • use case 4
  19. showcasing source code • syntax highlighting • to the point

    • dissolve animation • square boxes with some opacity
  20. showcasing source code • syntax highlighting • to the point

    • dissolve animation • square boxes with some opacity • slide duplication
  21. import 'package:google_generative_ai/google_generative_ai.dart'; const apiKey = 'get it from https://aistudio.google.com/app/apikey'; void

    main() async { final model = GenerativeModel(model: 'gemini-pro', apiKey: apiKey); final prompt = 'how many cats are too many'; final content = [Content.text(prompt)]; final response = await model.generateContent(content); print(response.text); }
  22. import 'package:google_generative_ai/google_generative_ai.dart'; const apiKey = 'get it from https://aistudio.google.com/app/apikey'; void

    main() async { final model = GenerativeModel(model: 'gemini-pro', apiKey: apiKey); final prompt = 'how many cats are too many'; final content = [Content.text(prompt)]; final response = await model.generateContent(content); print(response.text); }
  23. import 'package:google_generative_ai/google_generative_ai.dart'; const apiKey = 'get it from https://aistudio.google.com/app/apikey'; void

    main() async { final model = GenerativeModel(model: 'gemini-pro', apiKey: apiKey); final prompt = 'how many cats are too many'; final content = [Content.text(prompt)]; final response = await model.generateContent(content); print(response.text); }
  24. import 'package:google_generative_ai/google_generative_ai.dart'; const apiKey = 'get it from https://aistudio.google.com/app/apikey'; void

    main() async { final model = GenerativeModel(model: 'gemini-pro', apiKey: apiKey); final prompt = 'how many cats are too many'; final content = [Content.text(prompt)]; final response = await model.generateContent(content); print(response.text); }
  25. import 'package:google_generative_ai/google_generative_ai.dart'; const apiKey = 'get it from https://aistudio.google.com/app/apikey'; void

    main() async { final model = GenerativeModel(model: 'gemini-pro', apiKey: apiKey); final prompt = 'how many cats are too many'; final content = [Content.text(prompt)]; final response = await model.generateContent(content); print(response.text); }
  26. import 'package:google_generative_ai/google_generative_ai.dart'; const apiKey = 'get it from https://aistudio.google.com/app/apikey'; void

    main() async { final model = GenerativeModel(model: 'gemini-pro', apiKey: apiKey); final prompt = 'how many cats are too many'; final content = [Content.text(prompt)]; final response = await model.generateContent(content); print(response.text); }
  27. import 'package:google_generative_ai/google_generative_ai.dart'; const apiKey = 'get it from https://aistudio.google.com/app/apikey'; void

    main() async { final model = GenerativeModel(model: 'gemini-pro', apiKey: apiKey); final prompt = 'how many cats are too many'; final content = [Content.text(prompt)]; final response = await model.generateContent(content); print(response.text); }
  28. import 'package:google_generative_ai/google_generative_ai.dart'; const apiKey = 'get it from https://aistudio.google.com/app/apikey'; void

    main() async { final model = GenerativeModel(model: 'gemini-pro-vision', apiKey: apiKey); final prompt = 'how many cats are too many'; final content = [Content.text(prompt)]; final response = await model.generateContent(content); print(response.text); }
  29. import 'package:google_generative_ai/google_generative_ai.dart'; const apiKey = 'get it from https://aistudio.google.com/app/apikey'; void

    main() async { final model = GenerativeModel(model: 'gemini-pro', apiKey: apiKey); final prompt = 'how many cats are too many'; final content = [Content.text(prompt)]; final response = await model.generateContent(content); print(response.text); }
  30. import 'package:google_generative_ai/google_generative_ai.dart'; const apiKey = 'get it from https://aistudio.google.com/app/apikey'; void

    main() async { final model = GenerativeModel(model: 'gemini-pro', apiKey: apiKey); final prompt = 'how many cats are too many'; final content = [Content.text(prompt)]; final response = await model.generateContent(content); print(response.text); }
  31. import 'package:google_generative_ai/google_generative_ai.dart'; const apiKey = 'get it from https://aistudio.google.com/app/apikey'; void

    main() async { final model = GenerativeModel(model: 'gemini-pro', apiKey: apiKey); final prompt = 'how many cats are too many'; final content = [Content.text(prompt)]; final response = await model.generateContent(content); print(response.text); }
  32. import 'package:google_generative_ai/google_generative_ai.dart'; const apiKey = 'get it from https://aistudio.google.com/app/apikey'; void

    main() async { final model = GenerativeModel(model: 'gemini-pro', apiKey: apiKey); final prompt = 'how many cats are too many'; final content = [Content.text(prompt)]; final response = await model.generateContent(content); print(response.text); } syntactic sugar for network calls ✨
  33. memes • movies/tv-shows ~ pop culture refs • engaging &

    relatability • avoid overuse • add good memes & avoid edgy ones ⚠
  34. bonus tips • practice practice practice; rehearsals before talk •

    speak at moderate to slow speeds & use mic 🎤 • chewing gum might help in reducing stress • keep minimal points in slides • improvise on the spot if needed • drink water in-between ⚠ • keep giving talks :)
  35. thanks to • Dhruva Shastri (@DhruvaShastri12) • Dhrumil Shah (@Dhuma1981)

    • Mahima MS (@Mahi_Amy) • Samvid Mistry (@MistrySamvid) • Bhavik Makwana (@iBhavikMakwana)