<p>I am planning to give a Technical presentation for a product we are building.
Intended audience is Technical developers. So, most of the time, I will be debugging trough the code in Visual Studio, performance analysis, some architecture review etc.</p>

<p>I have read couple of <a href="http://www.hanselman.com/blog/11TopTipsForASuccessfulTechnicalPresentation.aspx" rel="nofollow noreferrer">blogs</a> on font sizes to use, templates to use on Visual Studio, <a href="http://weblogs.asp.net/jgalloway/archive/2006/12/05/tips-for-a-technical-presentation.aspx" rel="nofollow noreferrer">presentation tools</a>,  <a href="http://focs.wordpress.com/2007/09/12/9-tips-how-to-give-a-technical-presentation/" rel="nofollow noreferrer">among other</a> very <a href="http://blogs.msdn.com/kaevans/archive/2005/03/12/394527.aspx" rel="nofollow noreferrer">useful tips</a>.</p>

<p>What I am looking specifically for is how to keep the session interesting without making it a dry code walkthrough? How to avoid making people fall asleep? Would be great to hear some stories..</p>

<p><strong>Update1</strong>: Nice youtube clip on zoomit. <a href="http://www.youtube.com/watch?v=4jMLAF-9ACk" rel="nofollow noreferrer">Glue Audience To Your Presentation With Zoomit.</a></p>

<p><strong>Update2</strong>: New post from Scott Hanselman after his <a href="http://channel9.msdn.com/pdc2008/TL49/" rel="nofollow noreferrer">PDC talk</a> - <a href="http://www.hanselman.com/blog/TipsForPreparingForATechnicalPresentation.aspx" rel="nofollow noreferrer">Tips for Preparing for a Technical Presentation</a> </p>

[{'answer_id': 59796, 'author': 'Adam Davis', 'author_id': 2915, 'author_profile': 'https://Stackoverflow.com/users/2915', 'pm_score': 3, 'selected': False, 'text': "<p>Put interesting comments in the code.</p>\n\n<p>// This better not fail during my next presentation, stupid @#$@#%$ code.</p>\n\n<p>Don't talk about them, let them be found by the audience.</p>\n\n<p>-Adam</p>\n"}, {'answer_id': 59797, 'author': 'Ryan Lanciaux', 'author_id': 1385358, 'author_profile': 'https://Stackoverflow.com/users/1385358', 'pm_score': 1, 'selected': False, 'text': '<p>This is something that was explained to me, and I think it is very useful. You may want to consider not going to slide heavy at the beginning. You want to show your listeners something (obviously probably not the code) up front that will keep them on the edge of their seats wanting to learn about how to do what you just showed them.</p>\n'}, {'answer_id': 59801, 'author': 'bdukes', 'author_id': 2688, 'author_profile': 'https://Stackoverflow.com/users/2688', 'pm_score': 3, 'selected': False, 'text': '<p>FYI, that Hanselman article has <a href="http://www.hanselman.com/blog/11TopTipsForASuccessfulTechnicalPresentation.aspx" rel="nofollow noreferrer">an update</a> (your link is from 2003).</p>\n'}, {'answer_id': 59803, 'author': 'asksol', 'author_id': 5577, 'author_profile': 'https://Stackoverflow.com/users/5577', 'pm_score': 2, 'selected': False, 'text': '<p>You should read <a href="http://plover.com" rel="nofollow noreferrer">Mark Jason Dominus</a> excellent presentaton on public speaking:\n<a href="http://perl.plover.com/yak/presentation/" rel="nofollow noreferrer">Conference Presentation Judo</a></p>\n'}, {'answer_id': 59805, 'author': 'Jason Cohen', 'author_id': 4926, 'author_profile': 'https://Stackoverflow.com/users/4926', 'pm_score': 2, 'selected': False, 'text': "<p>Use stories.  Even with code examples, have a backstory: here's why someone is doing this.  To increase audience participation, ask for examples of X where X is something you know you can demo, then phrase the walk-through in those terms.</p>\n\n<p>Or maybe you have war stories about how it was different or how it normally takes longer or whatever.  I find people identify with such things, then as you give your examples they're mentally tracking it back to their own experience.</p>\n"}, {'answer_id': 59807, 'author': 'Peter Bernier', 'author_id': 6112, 'author_profile': 'https://Stackoverflow.com/users/6112', 'pm_score': 1, 'selected': False, 'text': '<p>I\'ve recently started to use Mind Mapping tools for presentations and found that it goes over very well.</p>\n\n<p><a href="http://en.wikipedia.org/wiki/Mind_map" rel="nofollow noreferrer">http://en.wikipedia.org/wiki/Mind_map</a></p>\n\n<p>Basically, I find people just zone out the second you start to go into details with a presentation. Conveying the information with a mind map (at least in my experience), provides a much easier way for the information to be conveyed and tied together.</p>\n\n<p>The key is presenting the information in stages (ie, your high-level ideas first, then in more detail, one at a time). The mind-mapping tools basically let you expand your map, as the audience watches and your present more and more detailed information. Doing it this way lets your audience gradually absorb the data in smaller stages, which tends to aid retention.</p>\n\n<p>Check out <a href="http://en.wikipedia.org/wiki/FreeMind" rel="nofollow noreferrer">FreeMind</a> for a free tool to play with. <a href="http://www.mindjet.com/products/mindmanager_pro/default.aspx" rel="nofollow noreferrer">Mind Manager</a> is a paid product, but is much more polished and fluent.</p>\n'}, {'answer_id': 59810, 'author': 'Scott Dorman', 'author_id': 1559, 'author_profile': 'https://Stackoverflow.com/users/1559', 'pm_score': 1, 'selected': False, 'text': '<p>Keep your "visual representation" simple and standard.</p>\n\n<p>If you\'re on Vista hide your desktop icons and use one of the default wallpapers. Keep your Visual Studio settings (especially toolbars) as standard and "out of the box" as possible. The more customizations you show in your environment the more likely people are going to focus on those rather than your content.</p>\n\n<p>Keep the content on your slides as consisce as possible. Remember, you\'re speaking to (and in the best scenario, with) your audience so the slides should serve as discussion points. If you want to include more details, put them in the slide notes. This is especially good if you make the slide decks available afterwards.</p>\n\n<p>If someone asks you a question and you don\'t know the answer, don\'t be afraid to say you don\'t know. It\'s always better than trying to guess at what you think the answer should be.</p>\n\n<p>Also, if you are using Vista be sure to put it in "presentation mode". PowerPoint also has a similar mode, so be sure to use it as well - you have the slide show on one monitor (the projector) and a smaller view of the slide, plus notes and a timer on your laptop  monitor.</p>\n'}, {'answer_id': 59813, 'author': 'Jon Galloway', 'author_id': 5, 'author_profile': 'https://Stackoverflow.com/users/5', 'pm_score': 2, 'selected': False, 'text': '<p>I recommend Scott Hanselman\'s post (previously mentioned). I\'ve written up a post with some tips, mostly for selfish reasons - I review it every time before I give a technical presentation:</p>\n\n<p><a href="http://weblogs.asp.net/jgalloway/archive/2006/12/05/tips-for-a-technical-presentation.aspx" rel="nofollow noreferrer">Tips for a Technical Presentation</a></p>\n\n<p>If you\'re using a console prompt, <a href="http://weblogs.asp.net/jgalloway/archive/2007/07/09/presentation-tricks-command-windows.aspx" rel="nofollow noreferrer">make sure the font is readable and that your paths are preset when possible</a>.</p>\n\n<p>Take 15 minutes to install and learn to use <a href="https://technet.microsoft.com/en-us/sysinternals/zoomit.aspx" rel="nofollow noreferrer">ZoomIt</a>, so your audience can clearly see what you\'re showing off. If you have to ask if they can see something, you\'ve already failed.</p>\n\n<p>Probably most important is to <a href="http://technet.microsoft.com/zh-cn/sysinternals/bb897434(en-us).aspx" rel="nofollow noreferrer">have separate Visual Studio settings pre-configured with big, readable fonts</a>.</p>\n'}, {'answer_id': 59845, 'author': 'prakash', 'author_id': 123, 'author_profile': 'https://Stackoverflow.com/users/123', 'pm_score': 1, 'selected': False, 'text': '<p>Have you heard of <a href="http://en.wikipedia.org/wiki/Pecha_Kucha" rel="nofollow noreferrer">Pecha-Kucha?</a></p>\n\n<blockquote>\n  <p>The idea behind Pecha Kucha is to keep\n  presentations concise, the interest\n  level up and to have many presenters\n  sharing their ideas within the course\n  of one night. Therefore the 20x20\n  Pecha Kucha format was created: each\n  presenter is allowed a slideshow of 20\n  images, each shown for 20 seconds.\n  This results in a total presentation\n  time of 6 minutes 40 seconds on a\n  stage before the next presenter is up</p>\n</blockquote>\n\n<p>Now, i am not sure if that short duration could be ok for a product demonstration. \nBut you can try to get some nice ideas from the concept, such as to be concise and keep to the point, effective time, space management etc..</p>\n'}, {'answer_id': 59849, 'author': 'Adam Davis', 'author_id': 2915, 'author_profile': 'https://Stackoverflow.com/users/2915', 'pm_score': 0, 'selected': False, 'text': '<p>If you use slides at all, follow <a href="http://blog.guykawasaki.com/2005/12/the_102030_rule.html" rel="nofollow noreferrer">Guy Kawasaki\'s 10/20/30 rule</a>:</p>\n\n<ul>\n<li>No more than 10 slides</li>\n<li>No more than 20 minutes spent on slides</li>\n<li>No less than 30 point type on slides</li>\n</ul>\n\n<p>-Adam</p>\n'}, {'answer_id': 59863, 'author': 'J Wynia', 'author_id': 1124, 'author_profile': 'https://Stackoverflow.com/users/1124', 'pm_score': 2, 'selected': False, 'text': '<p>One of the best pieces of advice I ever got for doing demos is to just plain record them in advance and play back the video, narrating live. Then the unexpected stuff happens in private and you get as many stabs at it as you need.</p>\n\n<p>You still usually need some environment to use as a reference for questions, but for the presentation bit, recording it in advance (and rehearsing your narration over the video) pretty much guarantees you can be at the top of your game.</p>\n\n<p>I also like to put small jokes into the slides and that recorded video that make it seem like the person who made the slides is commenting on the live proceedings or that someone else is actually running the slides. Often, I make absolutely no reference at all to the joke in the slide.</p>\n\n<p>For instance, in my <a href="http://www.wynia.org/wordpress/2008/09/07/standardized-aspnet-mvc-controller-actions-with-visual-studio-item-templates/" rel="nofollow noreferrer">most recent demo presentation</a>, I had a slide with the text "ASP.NET MVC" centered that I was talking over about how I was using the framework. In a smaller font, I had the text "Catchy name, huh?". When I did that demo live, that slide got a chuckle. It\'s not stand-up worthy by any stretch of the imagination, but we\'re often presenting some pretty dry stuff and every little bit helps.</p>\n\n<p>Similarly, I\'ve included slides that are just plain snarky comments from the offscreen guy about what I\'m planning to say. So, I\'ll say, "The codebase for this project needed a little help", while the slide behind me said "It was a pile of spaghetti with 3 meatballs, actually" and a plate of spaghetti as the slide background. Again, with no comment from me and just moving on to the next slide as though I didn\'t even see it actually made it funnier.</p>\n\n<p>That can also be a help if you don\'t have the best comedic timing by taking the pressure off while still adding some levity.</p>\n\n<p>Anyway, what it really comes down to is that I\'ve been doing most of my demo/presentation work just like I would if it was a screencast and then substituting the live version of me (pausing the video as appropriate if things go off the rails) for the audio when I give it in front of an audience.</p>\n\n<p>Of course, you can then easily make the <em>real</em> presentation available afterward for those who want it. </p>\n\n<p>For the slides, I generally go out of my way to not say the exact words on the screen more often than not. </p>\n'}, {'answer_id': 59873, 'author': 'Jake Hackl', 'author_id': 5247, 'author_profile': 'https://Stackoverflow.com/users/5247', 'pm_score': 2, 'selected': False, 'text': "<p>If you are showing code that was prepared for you then make sure you can get it to work. I know this is an obvious one but I was just at a conference where 4 out of 5 speakers had code issues. Telling me it is 'cool' or even 'really cool' when it doesn't work is a tough sell. </p>\n"}, {'answer_id': 59910, 'author': 'rp.', 'author_id': 2536, 'author_profile': 'https://Stackoverflow.com/users/2536', 'pm_score': 2, 'selected': False, 'text': '<p>The #1 rule for me is: Don\'t try to show too much. </p>\n\n<p>It\'s easy to live with a chunk of code for a couple of weeks and think, "Damn, when I show \'em this they are gonna freak out!" Even during your private rehearsals you feel good about things. But once in front of an audience, the complexity of your code is multiplied by the square of the number of audience members. (It becomes exponentially harder to explain code for each audience member added!)</p>\n\n<p>What seemed so simple and direct privately quickly turns into a giant bowl of spaghetti that under pressure even you don\'t understand. Don\'t try to show production code (well factored and well partitioned), make simple inline examples that convey your core message. </p>\n\n<p>My rule #1 could be construed, by the cynical, as don\'t overestimate you audience. As an optimist, I see it as don\'t overestimate your ability to explain your code! </p>\n\n<p>rp</p>\n'}, {'answer_id': 59970, 'author': 'dagorym', 'author_id': 171, 'author_profile': 'https://Stackoverflow.com/users/171', 'pm_score': 2, 'selected': False, 'text': "<p>Since it sounds like you are doing a live presentation, where you will be working with real systems and not just charts (PPT, Impress, whatever) make sure it is all working just before you start.  It never fails, if I don't try it just before I start talking, it doesn't work how I expected it to.  Especially with demos.  (I'm doing one on Tuesday so I can relate.)</p>\n\n<p>The other thing that helps is simply to practice, practice, practice.  Especially if you can do it in the exact environment you will be presenting in.  That way you get a feel for where you need to be so as not to block the view for your listeners as well as any other technical gotchas there might be with regards to the room setup or systems.</p>\n"}, {'answer_id': 1030371, 'author': 'Community', 'author_id': -1, 'author_profile': 'https://Stackoverflow.com/users/-1', 'pm_score': 1, 'selected': False, 'text': '<p>Besides some software like Mind Manager to show your architecture, you make find a screen recorder as a presentation tool to illustrate your technical task. <a href="http://www.sameshow.com/demo-creator.html#107" rel="nofollow noreferrer"><strong>DemoCreator</strong></a> would be something nice to make video of your onscreen activity. And you can add more callout to make the process easier to understand.</p>\n'}]
['https://Stackoverflow.com/questions/59793', 'https://Stackoverflow.com', 'https://Stackoverflow.com/users/4337/']