A Funny Java Flavoured Look at the World

Wednesday, February 14, 2007

10 presentation tips for developers

In reality I am probably the last person to give tips on giving presentations as I am not that good at giving presentations. Recently though I had to give a presentation so I thought I would note down how I did it and what worked for me, so if any of you other poor developers are bullied into your suit and made to give a presentation you can see how someone else did it.

1. Write it early
don't leave it too late. Get it done early and then once it is written you can chop and change it, other people can look at it. Basically it gives you more time improving your presentation, whether its editing the presentation, adding bits, removing bits, practising or just thinking about it.

2. Edit and edit again
if you are have written the presentation early enough, it is a good idea to read again each day after you have had a break from the presentation. I often find that if you keep working on a presentation you get to a stage where you can't see the wood from the trees. So it's good to do something else and then look at the presentation again. You can then decide what bits aren't needed.

3. Show other people
Feedback on presentations is very important because often you are writing the presentation from the point of view of someone who (often) knows a lot about the subject. In my case recently it was doing performance tips but before I have presented on projects I have done. Getting feedback from other people will give you an opinion of people who don't know about the subject and this can highlight areas which might not be easy to understand by people who don't know the subject. Showing other people will also bring out other problems like spelling, grammar and making sense.

4. Don't make it too long
Short is sweet. People want to know what your presentation is about but they don't want to be bored by it. I find that shorter presentations are often easy to digest. After a certain period if the subject is boring then people will start to switch off.

5. Don't just rely on PowerPoint (if possible)
Although PowerPoint is nice and safe it can also be a bit boring, watching slide after slide. If you can try and put a life demo in and if you can't put a live demo in or you are a bit worried about it then you can record yourself clicking about with the software and then show this and talk about it to the audience. I find this change of presentation style helps keep the audience interesting and it's also visual which the audience love.

6. Add a few jokes
even if you aren't a "funny" person adding in a few jokes is appreciated by the audience. Often presentations are boring and sitting down for a 15-30 minute lecture where you have nothing to do but listen can be tough. So a when there is a small joke added into presentation its a good respite and people are glad for it. I have seen people laugh at terrible unfunny jokes and if they weren't said whilst doing a presentation nobody would laugh but because you add the joke in during a presentation people like it.

7. Practise Practise Practise
I am a terrible speaker and get nervous and flustered. The way I have personally found to help overcome this

8. Make sure it works
if you are using a live internet page or a live piece of software, make sure that you go on the machine the morning of the talk and test that all your web pages work and the software is running. When the software or links don't work it is like watching a wet firework, all the anticipation and then a great big nothing, it also looks a tad unprofessional. If you can make sure you have a backup plan, like a movie of the software or just a load of waffle saying what they would have seen and where to find it later.

9. Look at the audience and Slow Down
Although I said don't make the talk to long, try to avoid going up and rushing through the presentation because you are nervous. People will need time to digest what your presentation is about and they certainly won't be able to do this if you rush through the presentation at 100 miles an hour. Try not to get to flustered and keep the pace not to fast. Another tip is to try and look at the audience whilst delivering the presentation, this has the added bonus of giving you something to focus on and not fidget nervously to much.

10. Practise Practise Practise
I find it difficult to give speeches and presentations but one way I have found to make it easier is just by practising the speech/presentation. The more I can practise the speech the less I have to think about what I have to say and the less I need to look at my notes. When you aren't as worried about what you are saying you can then concentrate more on the delivery of the speech. It also gives me more confidence in the presentation the more times I run though it and in the end it becomes more practised and polished.

10 + 1 - bonus tip. Ask if people have any questions at the end
This has the potential to open a can of worms but it may also answer a question which everyone watching is thinking about. It also gives you an opportunity to reply and talk about the presentation topic. Also someone might bring up a useful question

There are all my tips, I would be very interested and grateful for any tips any one else has on the topic of giving presentations because it is certainly one area I could do with improving in and anything to make them less stressful is certainly a good thing for me

using system properties

I was doing some coding that was creating files and changing directories inside a file. I did the work initially on a windows machine, tested on a windows machine and I don't think there was any talk of a Linux machine. So of course onto the Linux machine we go, my code popped up the white flag and promptly fell flat on its backside.
I had of course heard about the nastiness of backward and forward slashes and have been drawn into the Linux world recently but thanks to the beauty of Java and it's platform independency. I recently read somewhere (and blogged about it) that Java isn't platform independent it is a platform, which I suppose is a fair point but to which doesn't really seem to be a bad thing to me (apart from a touch of bloatyness). Anyway back to the subject.
http://scv.bu.edu/Doc/Java/tutorial/java/system/properties.html

There are a number of useful values in the System object and probably the most popular is the System.out.println that a lot people use for debugging their code.

Another useful item is the

"file.separator"

this will return the file separator used, so in my code I used this instead of using a backslash or forward slash, I used the

System.getProperty("file.separator")

this will return the different file separator used for the different operating systems. I'm sure a lot of people already know about the system properties but this was just one way I found to solve problems I had when saving and reading files on different operating system.

Agile and Scrum resources

I don't use Scrum or Agile methods but I read about them now and again. If you are interested in Agile and Scrum I found a site with some good resources
The link above has a number of good resources, interestingly it has a number of links to google video's where they have talks on scrum, all of which are about an hour long and the couple I looked at were a good introduction to SCRUM.
The other really useful link Learn Scrum in 5 minutes
Although it always makes me smile when I read about the Scrum Master, it reminds me of scouts or something like that.

Wednesday, February 07, 2007

SCJP 5 resources

I can't remember where I found this but someone has a made a list of a lot of SCJP resource links on my blog. This was something I was meaning to do, so it saved me the bother. I'm not sure if they are all in here, so my advice would be just to search on the SCJP topic on my blog and then it will return lots of stuff.

here is the link

http://www.google.com/notebook/public/09466151404937120238/BDTncIgoQi_G7jdMh

enjoy and I hope it helps anyone to pass the exam

as I bonus I just saw this on Java lobby, a forum with links to SCJP 5 exams

http://forums.javabeat.net/index.php?topic=5.0

champion