Category Archives: Demo

Big no no’s when giving a talk or presentation

Recently I visited TechX Sweden, a new IT-conference described as summarizing the best from Build and Tech Ed. I was disappointed to say the least, if this was the best they can cancel both Build and Tech Ed. Since I have visited Tech Ed I know that it is far better than this! =)

Anyway, it was not only the content that was below an accepted level but the presenters! The presenters are pros and gives talks all the time so they should know how to avoid the biggest no no’s when giving a talk or presentation. I have summarized my top 5 no no’s below. Follow them and you will become a better presenter in no time!

1.    Face the audience

When giving a talk, the room is filled with people that are there to listen to what you have to say. You know your material and what is shown on the projector, so STOP turning around facing the presentation on the wall when you talk. This is a so common thing among unexperienced (and experienced that don’t work their presenting-skill) that when they change their PowerPoint slide, they turn around and speak into the wall explaining the static image. You should know your material good enough to be able to face the audience and speak to them! If you are nervous, be sure to have your presentation computer in front of where you are standing, that way you can take a quick look at the screen to see that everything is working behind you. This will give a more inviting touch to your presentation style and you will be perceived as more professional. A note here, watch out so you don’t end up looking into the computer screen instead, focus on the crowd!

 

2.    Fix your demos

If you are planning on giving demos, make sure that they work! It is not OK to have planned a demo that will show of cool features and when it’s not working try to explain what cool thing that should have happed if it worked. This will only make you look foolish and unprofessional. Sure bad things can happen. You might rely on an internet connection and it goes down before your talk. It’s up to you to have a fall back strategy for when the environment is not optimal. If the internet connection goes down you should have an offline version instead. To cite Queen; “The show must go on”! Work on your demos, try them out a couple of times before you enter the stage and be prepared! And oh, when trying them out, it is not OK to put demos in a state that when you run it the next time it will be a different experience and you figure that you will cover it up by explanation, DON’T! Reset the demo. E.g. if you are demoing a web site that will use Google log in, it is not OK to skip that part of the demo because you are logged in from test running the app and explaining “well this would happen but it didn’t…”.

 

3.    Stay on topic

When planning your talk, be sure that there is a red thread that goes through your talk and be sure that it will reflect your title. E.g. if you are about to give a talk about news in ASP.NET MVC 5, don’t ramble on about how much better Web API are at things or how you have created hacks to override things in the framework. Give the talk about news in MVC 5 and focus on that! If you don’t have a red thread for people to follow they will be confused. “What is he trying to say? What is his message? Ah fuck it, who wants ice-cream?”. Work your material and be sure to stay on target!

 

4.    Prepare your presentation machine

When giving a talk where you have your PC/Mac etc. connected to a projector, be sure to have your machine in a mode that is presentation-safe. With this I mean that what happens on your screen will be shown to the crowd. This means that you don’t want distractions from what you are presenting. Example, be sure to clean your browser history so if you are using your browser for a demo,  you will be sure that the audience is not distracted by your browser history containing entries of Piratebay, IloveCuteCats.com or StarTrekRealRolePlayes.com. Clean it up and let the audience focus on the presentation / demo itself.
Also turn of all other distractions like email notifications. They can be containing private information about your company or clients, or they can be of private nature. It is not ok if any of this appears on the screen. This is very unprofessional!

Keep your computer in a state that is ok for public display. This can be done either by just closing all apps or you can set up a separate user account on your machine just for this purpose. It’s up to you to find a solution that works for you, the importance is that you do it.

 

5.     Practice!

The most common pit fall when giving a talk is that you haven’t practiced enough. Be sure that you know your material like you know the inside of your own pocket. Only then can you be confident enough to really rock the stage. When you know the material it is important that you practice your performance. Practice your talk over and over. If you have the option, tape the practice and watch yourself to find weird things that you do. For instance, do you waive your arms around all the time, or do keep saying “Eh” all the time? Find out and for the love of god, work with it, because this is something that the audience will lock on to and won’t be able to drop. They will most likely remember you as the guy saying “Eh” all the time and not for the amazing content you are trying to convey.

 

To summarize it all up. Try to think of yourself as a rock star and compare your performance to a concert. Be sure to sing to the audience (Face the audience), make sure that your guitar solos sticks (Fix your demos), sing one song at the time (Stay on topic), don’t bring your embarrassing groupies on stage (Prepare your presentation machine) and make sure that you know the lyrics (Practice!). Follow these advices and you will most certainly become a better speaker!

Set your Windows Phone 8 app as a lock screen provider

A great feature introduced in Windows Phone 8 is the ability for an app to become a lock screen provider. The feature enables more personalization for the users who can have content on their lock screen that is relevant to them, and that updates! Say for instance that you creates an app for a social network that handles images submitted by a user, then you can use this feature to show different images from that image collection on the users lock screen. To update the lock screen image periodically, you can use a background agent. As always you can find the demo project as a zip file in the end.

Only one app can be used as a lock screen provider at the time, and the user can change the provider form the settings panel or an app can request to be the provider at run time.

To change the provider outside any app, the user can do this by going to settings and then lock screen. Here is a drop down list called “Background”. The apps presented here is the ones with the required capability in the manifest. We will take a look at this later on.

lockscreensettings          chooselockscreenprovider

So let’s look at the code. For this demo I have created a demo image in Paint. We will start our demo with a new Windows Phone project. Then we will add my image to a folder that we can name Images.

folders

When this is done we need to take care of the app manifest. In this case we can’t just open it like we do when we add capabilities and other features. Instead we need to open with an XML-editor. Right click the WMAppManifest.xml file and choose Open with. In the dialog that is shown, select XML (Text) Editor and press OK. This will open up the manifest file as XML.

openwith

Next step is to add the extension.


  

This must be added just below the tag!
What happens if we forget the manifest step? If you do you will, as with capabilities, run into an exception while trying to set the background image, as seen below.

exception

Now when everything is set up, we will dive into the code and with just a few lines add great functionality to the app.

We will create an async method where we will add our code that we want to run when the app starts to set the background image, and then call the method from the constructor.

The first thing in the new method is to see if our app is currently the provider, and if not, ask the user if he/she want to use the app as the provider. (If the user has selected the app via settings, the app will be the provider).

 

//Check to see if the app is currently the lock screen provider
if (!LockScreenManager.IsProvidedByCurrentApplication)
{
    //Request to be lock screen provider
    await LockScreenManager.RequestAccessAsync();
}

This will result in the following when starting the app;
setaslockscreen

As we see, the user is in control of his/her phone and the app cannot change anything without his/her knowledge.
Next step is to set the image as lock screen background. This can also be done by a background agent if periodically updates is the goal.

//Check to see if the app is currently the lock screen provider
if (LockScreenManager.IsProvidedByCurrentApplication)
{
    //Set the image to the lock screen image
    Uri imageUri = new Uri("ms-appx:///Images/lockscreen.png", UriKind.RelativeOrAbsolute);
    LockScreen.SetImageUri(imageUri);
}

The whole method will look like this;

private async void SetLockScreen()
{
    //Check to see if the app is currently the lock screen provider
    if (!LockScreenManager.IsProvidedByCurrentApplication)
    {
    //Request to be lock screen provider
    await LockScreenManager.RequestAccessAsync();
    }

    //Check to see if the app is currently the lock screen provider
    if (LockScreenManager.IsProvidedByCurrentApplication)
    {
    //Set the image to the lock screen image
    Uri imageUri = new Uri("ms-appx:///Images/lockscreen.png", UriKind.RelativeOrAbsolute);
    LockScreen.SetImageUri(imageUri);
    }
}

When we run the app we will can use F12 to simulate the power button to lock the phone and then to unlock it. This will show us that we succeeded in setting a new background image to the lock screen!
changedlockscreen

 
download source code