Announcing the Pomodoro Windows app

August 2017 MVP Jan Egil Ring and I launched an open source PowerShell based Pomodoro timer. This is a great way to get stuff done, but difficult to get started with. Andreas Kang Schøyen over at Lillevik IT has done something about that and created an executable program that sets up the integrations and timer.

How it works

When downloading and installing the app, it will automatically integrate with your Skype for Business 32 bit application and your Windows OS making it capable to:

  • Set you to “do not disturb” in Skype for Business with a custom presence state called Pomodoro Sprint
    • The app cotains the SDK dll’s for the Skype for Business client, so no extra installs to control presence
  • Write a note of your choosing during the the Pomodoro sprint and adding the time when you will be available
    • It even counts down the last 15 seconds, so that people waiting to reach you that you are about to become available
  • Write a note of your choosing after the Pomodoro sprint is complete
  • Set your computer in to presentation mode which suppresses popups
  • Start your favourite Spotify playlist for productivity
  • Make you available again when the sprint is finished

The app supports automatic updates and the roadmap includes IFTTT ingration so that you can mute your phone during the pomodoro sprint. See full roadmap here

PomodoroV2

The goal is to induce the flow state in a busy workday

Multitasking is a myth. The goal is to reach the flow state by focusing on one task at a time. Have you ever started writing an email, thought you sent it and eagerly waiting for a response, only to find it incomplete and unsent at the end of the day? This is one of the perils of multitasking.

The Pomodoro Technique is a great methodology to induce flow in a busy workday. It is all about avoiding distractions for 15-25 minutes and focus on one task at a time. This is a short enough period in the day that you can squeeze it in before a meeting. It is incredible what you can get done 15-25 minutes. The goal is to not get distracted and it takes about 7 minutes of focus before your reach your flow state.

If you want to succeed with Pomodoro, you need to make yourself unavailable. Equally important, you need to make yourself available again when those 25 minutes have passed. That is why we created the Pomodoro PowerShell tool, and why I love the simplicity of this app.

Read more and download the exe and MSI version of the app here: http://pomodoro.lit.no

Watch an outtake from my session at Microsoft Ignite 2017 on singletasking

Learn more on my thinking around singletasking and tools available to succeed with the flow state, from this outtake of my OneNote LifeHacks talk at Microsoft Ignite 2017

Complete lists of your tasks is key to success

An important part of succeeding with the Pomodoro Technique is lists. Lists enables you to choose the task that lifts the most weight off your shoulders at that point in time. I use OneNote to capture all my ideas and actions, enabling me to create that finite list of tasks. Check out how I do it in my OneNote LifeHacks YouTube series

Set yourself unavailable with this open source PowerShell based Pomodoro timer

Update: An executable Windows app has been created based on this open source script to simplify the process. Read about it here

MVP Jan Egil Ring and I have created a GitHub PowerShell project called PsProductivityTools. There you will find a function called Start-Pomodoro with the following features

  • Count down for 25 minutes by default or a period specified by you
    • Start-Pomodoro -Minutes 10
  • The function will set your computer in presentation mode which will suppress all notifications and popups on your windows machine
  • Set your Skype for Business client in Do Not Disturb using a custom presence state called Pomodoro Sprint and set your personal note to when you will be available
  • You can mute and unmute your phone during the Pomodoro Sprint using IFTTT triggers
    • You need to have created the mute and unmute triggers, generated a webhook key and installed IFTTT on your mobile
    • Will write a tutorial in a later blogpost
  • It will make you available again after 25 minutes or your specified time, turning on notifications, making you available again in Skype for Business and unmute your phone. Awesome stuff :)

This is an open source project on GitHub so please feel free to add your own suggestions to the project.

How to get started

  1. Open PowerShell and run the following cmdlet
    • Install-Module -Name PSProductivityTools
    • if you need to update it later run Update-Module -Name PSProductivityTools and restart all PowerShell instances
    • You need to run PowerShell as administrator in order to install the module
  2. Now you can run Start-Pomdoro at any time from PowerShell
    • Start-Pomodoro
      • This will set your computer in presentation mode
    • Start-Pomodoro -Minutes 15 -EndPersonalNote “It’s a good day today”

What is the Pomodoro Technique?

The goal of the technique is to reduce the impact of internal and external interruptions on focus and flow. A pomodoro is indivisible. When interrupted during a pomodoro, either the other activity must be recorded and postponed (inform – negotiate – schedule – call back) or the pomodoro must be abandoned. The technique uses a timer to break down work into intervals, traditionally 25 minutes in length, separated by short breaks. These intervals are named pomodoros. Read more about the Pomodoro Technique here

Why the Pomodoro Technique?

If I can get one Pomodoro done in between meetings, workshops and calls, then I am happy. That Pomodoro is priceless and it helps me answer that long email, get started on that document or wrap my head around a problem. 25 minutes is long enough so that I can reach my flow state and short enough that I feel that I actually can do it. It may take between 5-10 minutes to reach the flow state. If I manage to interrupt myself with social media, coffee break or decide to do something else, then I may spend longer time in total on that email instead of just get it done during a Pomodoro. If you want to succeed with Pomodoro, you need to make yourself unavailable, but equally important, you need to make yourself available again when those 25 minutes have passed. That is why we created the Pomodoro PowerShell tool

What is flow?

Flow is the peak performance state where you feel your best and you perform your best. The good news is, it’s hackable. One of the hacks is inducing flow using the Pomodoro Technique. Read more about flow over at the Flow Genome Project

An important part of succeeding with the Pomodoro Technique is lists with your most important tasks that you can prioritize. I use OneNote for that. Check out how I do it in my OneNote LifeHacks YouTube series 

How to set custom presence states in Skype for Business on your Windows machine

This works on Windows 10, Windows 8, Windows 7, Lync and Skype for Business desktop clients. Requires administrative rights to your computer. Make sure you check out the Pomodoro Windows App that makes it even easier to set custom presence states

Wouldn’t it be cool if you could change your presence state in Skype for Business to match you current task such as busy in a Workshop, Do Not Disturb in a Pomodoro Sprint or Away Getting Coffee?

Turns out, you can by creating an XML file and adding a setting in your local registry. How? The easy way is to download my script, change the custom presences that is predefined in the script and run it.

  1. Download the script from TechNet Gallery
  2. The default custom presence states are shown below
  3. To change the names you need to open the script and write your own presence states
    • Away does not work as a custom presence state, if you put that in no custom states will show up in the client
    • The presence states that works are: Online, Busy, and Do-Not-Disturb
  4. To run the script, just type the following in PowerShell in elevated mode from the location you saved it
    • .\Set-CsCustomPresence.ps1
    • It works for Lync and Skype for Business
    • It works for 64-bit and 32-bit office
    • It works for MSI installed Office and Click-to-Run Office
    • The xml file will get stored under c:\_CustomPresence\CustomPresence.xml if that is your systemdrive
  5. You need to sign out of the client and back in for the changes to take effect
  6. The presence states works in the following scenarios
    • On English Skype for Business clients for you and your colleagues
    • On Skype for Business clients in your local location retrieved using (Get-Culture).LCID
    • For everyone in your Colleagues relationship level as long as they are running a client language version specified above
    • If you want external contacts to see your custom presence state you need to elevate them as colleagues in the relationship pane
      • Understand that they will also see you as in a meeting, in a call, your note and your location as well
    • If you are in an environment with more than two languages for you Office deployment, make sure you add an LCID per language in the script

Download the script here and use PowerShell to control your presence using the Lync 2013 Client SDK described here

You can now control you custom presence states using PowerShell, if you have installed the SDK, using the Publish-SfBContactInformation.ps1 found on GitHub here with this syntax

Publish-SfBContactInformation -CustomActivityId 1 -PersonalNote "Getting Stuff Done" -Location "@HomeOffice"

You are now ready to use this in a Pomodoro context, read how to get started with the open source PowerShell based Pomodoro timer here: https://msunified.net/2013/11/25/lock-down-your-lync-status-and-pc-notifications-using-powershell/

How to install the Lync 2013 Client SDK

To install the Lync 2013 Client SDK you need to have administrator rights to your computer. This works on Windows 10, Windows 8, Windows 7, Lync and Skype for Business desktop clients.

Why would you install the SDK? Because you can then play with some of the client settings such as presence states using PowerShell. How can  you do that? Download and use this script. You can also use it with my Pomodoro PowerShell timer

How to installing the SDK without having to install Visual Studio

  1. Download the Lync SDK from this link, do not run the exe file
  2. To avoid the requirement to have Lync 2013 installed and the need to install Visual Studio, you need to extract the files using winrar
    • You will then get two msi files
    • Run the one that matches the bitness of your Office installation
      • To find out if you have a 64-bit Office or a 32-bit Office
        • Open Word, go to file->Account->About Word and see you version as in the picture
      • Install lyncsdk86.msi if you have a 32-bit Office
      • install lyncsdk64.msi if you have a 64-bit Office
  3. You have now successfully installed the Lync 2013 SDK
    • Microsoft has not released a SDK for Skype for Business, but the Lync 2013 Client SDK works great

To get the most out of the use of the SDK, read my blog post on creating custom presence states that you can control using the PowerShell script mentioned above with the example below

Publish-SfBContactInformation -Availability "Available" -ActivityId available -PersonalNote "Getting Stuff Done" -Location "@HomeOffice"

Office 365 Multi-Factor Authentication requirements explained

Short version

mf_authMulti-Factor Authentication (MFA) in Office 365 is dependent on Modern Authentication which is oAuth 2.0 via ADAL that authenticates the user in Azure AD

Longer version with links to deep dives

  • What is MFA?
    • Multi-Factor Authentication (MFA) in Office 365 requires Modern Authentication (oAuth2.0 + ADAL) to be enabled for the clients and services that are going to use MFA
    • MFA, Two-step verification, is a method of authentication that requires more than one verification method combined with the Azure Authenticator App, SMS or phone call verification
    • Read more here
  • What is Modern Authentication?
    • Modern Authentication is oAuth 2.0 used via ADAL to enable newer applications (Outlook, Word, OneNote, Skype for Business and other Office applications) to authenticate to services such as Skype for Business, Exchange and SharePoint
    • In Office 2013 march 2015 update and later Modern Authentication is supported and in Office 2016it is enabled by default and will use an in-application browser control to render the Azure AD sign-in experience
    • Read more here
  • What is oAuth?
    • Open Authentication 2.0 (oAuth 2.0) is used as a component via ADAL as the web-based authorization flow between servers or clients and servers
    • Read more here
  • What is ADAL?
    • Microsoft Azure Active Directory Authentication Library (ADAL) is a tool in the .NET framework that lets client applications authenticate users to Office 365 and Azure AD
    • Read more here
  • Two options are available for SSO with on-premises AD that requires Modern Authentication
    • Pass Through Authentication (PTA)
      • Works with Office 365 only
      • Enabled on latest AADC with outbound connection only, no DMZ server
      • Just set up several AADC and it is automatically loadbalanced resulting in low operational cost
      • Does not store password in Azure AD, authenticates user in on-premises AD first and presents MFA after that if enabled
      • In combination with password sync you are not dependent on AADC uptime
      • Read more here and here
    • ADFS 3.0
      • Used for hybrid Skype for Business and Exchange environments
        • Skype for Business server Hybrid supports Modern Authentication, but will do NTLM authentication to on-premises AD and give MFA pop-up when authenticating to Exchange Online, read more here 
        • I recommend Pointsharp MFA for on-premises and hybrid Skype for Business deployments
        • Exchange Server hybrid requires MFA Server, read more here
        • For best Azure MFA result an Online only deployment is recommended
      • ADFS is best for larger organizations
      • More complex and requires proxy servers in DMZ with public IP and Certificate
      • Requires loadbalancer for high-availability
      • Is required when doing MFA with Smart Card, 3rd party tokens and certificate based authentication
      • Read more here
  • You can now use Microsoft Intune to control MFA options and turn of MFA for certain subnets and conditions, read more here
  • Read about conditional access, MFA with Intune Hybrid and SCCM
  • Use Azure AD Premium with automated password roll-over for business social media profiles protected by a MFA enabled identity with centrally controlled delegation, read more here

mfastalehansen

Running the Skype for Business Partner Airlift in Norway January 2017

skype-for-business-weblogo16-18 January Microsoft has planned a Skype for Business Partner Airlift in Oslo and I am running it. For only 6 600 NOK you will get 3 days of technical training and 2 days exam prep. The airlift is designed to enable partners to understand and design the new workloads for Skype for Business in Office 365 with hands on. I will expand the content with my experience and I will share my thoughts on voice and video design in a cloud first world. We will cover

  • Cloud PBX
  • Meeting Broadcast
  • Hybrid Voice
  • Cloud Connector Edition
  • Network planning
  • Skype Operations Framework

Two days of exam prep for exam 70.334 is included as part of the airlift. Head over to the sign-up page today, limited seats are available: http://www.bouvet.no/Kurs/Kurskalender/Microsoft/Skype-for-Business/

Speaking av TechDays Sweden 2016

November 16th 2016 I had the pleasure of talking at TechDays Sweden about How to get started with Skype for Business Meeting Broadcast. This is the second time I have the honor of attending as a speaker and this is a really great conference with a good expo floor and great keynotes.

techdays

Heard about Meeting Broadcast in Office 365? It is available for all Enterprise licenses. You can use your regular Skype for Business client to stream your meeting to any device without any client requirements. After the meeting it will be available on demand and you can get statistics on how many have consumed your broadcast. New features even include a QA module for two way communications with your attendees. This session will walk through how to get started, best practices and how to look professional doing it.

Watch the recording

techdays.PNG

Video: https://channel9.msdn.com/Events/TechDays-Sweden/Techdays-Sweden-2016/How-to-get-started-with-Skype-for-Business-Meeting-Broadcast–Level-200
Date: 16 Nov 2016
Time: 11:00 – 12:00
Room: M6

Read more and sign up here: http://tdswe.se/session/how-to-get-started-with-skype-for-business-meeting-broadcast-level-200/

My unbiased review of Skype for Business Unleashed

Nevermind! My name is in it!

With 15 other awesome Skype for Business subject matter experts. 1001 epic pages on everything you thought you did not need to know about Skype for Business. It just has to be a great book, run out and buy it :)

Also look up my chapter on VDI, cool stuff is happening there. Was an honor to be part of it, thanks Pat Richard for involving me :)

Scored a 20 minutes theater session at Microsoft Ignite 2016

ignite2016

Due to big demand my session is now set up three times in the Community Hub area. Make sure you catch a run

Check out my profile on the Ignite site as well: https://myignite.microsoft.com/speaker/15895

I am happy to announce that I will return to Microsoft Ignite as a speaker. This time I will do a 20 minute theater session on how I design a global Skype for Business voice solution. There is not much I can dive in to in 20 minutes, but if you want an overview of what your options are and what I think about when talking global voice with customers and partners, make sure you attend this theater community session at Microsoft Ignite. Hope to see you there :)

Check out the other Skype for Business sessions at Ignite

Presenting at Enterprise Connect webinar March 30, 2016

ec_nj_unimax_header3On March 30, 2016 I am presenting at an Enterprise Connect webinar about Skype for Business and overcoming telephony migration challenges. I see that the challenge of doing phone numbers right are real both in larger Skype for Business environments and global mixed environments. I am looking forward to discussing the challenges with industry expert Kevin Kieller and the Unimax team on March 30. Make sure you register here

Topic

More and more organizations are complementing or replacing their legacy telecom and UC systems with Skype for Business. The challenge is phone number management in a mixed environment or in a Skype for Business only environment. For the past five years I have been working on phone number management within Lync and Skype for Business resulting in the latest iteration of my PowerShell script. I have also talked at Microsoft events such as Lync Conference, TechEd North America and Microsoft Ignite about the challenges and I see a real interest in the market on how to do number management effectively.

Check out the latest version of my phone number management PowerShell script and talk from Microsoft Ignite: http://lyncnumbers.net/2015/10/20/updated-get-sfbnumbers-ps1/