PowerShell Timer with Alarm
Function Start-Timer {
    param(
    [Parameter(Mandatory=$true)]
    [int]$seconds,
    [Parameter(Mandatory=$false)]
    [switch]$alarm 
    )
    $a = $(Get-Date)
    For($i=1;$i -le $seconds;$i++){
        Write-Progress -Activity "$seconds Second Timer" -Status $i -PercentComplete $(($i/$seconds)*100) -id 1
        Start-Sleep -Seconds 1
    }

    if($alarm){
        For($i=1;$i -le 10;$i++){
            [console]::beep(500,300)
        }
    }
}
Details
Simply call the function with the number of seconds and the optional alarm switch. It will provide a countdown with a progress bar.
Make Your Computer Talk
Add-Type -AssemblyName System.Speech
$Speech = New-Object System.Speech.Synthesis.SpeechSynthesizer
$Speech.Speak("I'm sorry Dave, I'm afraid I can't do that")
Details
Use the built-in Speech Synthesizer to have PowerShell make your computer talk. Credit to u/urabusPenguin on r/PowerShell for the idea.