Skip to content
Menu
The Lonely Administrator
  • PowerShell Tips & Tricks
  • Books & Training
  • Essential PowerShell Learning Resources
  • Privacy Policy
  • About Me
The Lonely Administrator

Happy Birthday Pluralsight

Posted on April 23, 2014

Pluralsight is celebrating its 10th birthday today. As part of their celebration they are running a quick contest with a cool prize. They also asked authors for a birthday greeting or message. Since all of my courses are PowerShell related it seemed only fitting to do something like this:

Manage and Report Active Directory, Exchange and Microsoft 365 with
ManageEngine ADManager Plus - Download Free Trial

Exclusive offer on ADManager Plus for US and UK regions. Claim now!
https://jdhitsolutions.com/blog/wp-content/uploads/2014/04/Pluralsight-birthday.wmv

Sure, hardly a practical use of PowerShell but it sure was fun to put together. Here is the script I ran.

cls

Function PauseIt {
[cmdletbinding()]
Param()
    Write-Verbose "PauseIt"

    #wait for a key press
    $Running=$true
    #keep looping until a key is pressed
    While ($Running)  {
     if ($host.ui.RawUi.KeyAvailable) {
     $key = $host.ui.RawUI.ReadKey("NoEcho,IncludeKeyDown")
        if ($key) {
         $Running=$False  
         #check the value and if it is q or ESC, then bail out
         if ($key -match "q|27") {
           Write-Host "`r"
           Return "quit"
           } #if match q|27
        } #if $key
      } #if key available
      Start-Sleep -millisecond 100
    } #end While
} #PauseIt function

Function TypeLine {
Param(
[string]$Text,
[switch]$NoPrompt
)

 If (-Not $NoPrompt) {
   Write-Host "PS C:\> " -NoNewline
 }
 $text.ToCharArray() | foreach {
   Write-host $_ -NoNewline
   start-sleep -Milliseconds (Get-Random -Minimum 50 -max 100)
 }
}

Write-Host "PS C:\> " -NoNewline

PauseIt

$v = new-object -ComObject Sapi.SPVoice
$v.Speak("Hello, and welcome to my world.") | out-Null

$Line = '$colors = [enum]::GetNames([consolecolor]) | where {$_ -ne $host.ui.RawUI.BackgroundColor}'
TypeLine $line -NoPrompt
Invoke-Expression $line
"`r"
$v.Speak("I have a special message.") | out-Null

$Line =  '$msg="Happy Birthday, Pluralsight!"'
TypeLine $line
$v.Speak("And a special way to say it, thanks to Jeff.") | out-Null
Invoke-Expression $line
"`r"
$Line = '$msg.ToCharArray() | foreach { write-host $_ -NoNewline -ForegroundColor (Get-Random $colors) -BackgroundColor (Get-Random $colors)} -end {"`n"}'
TypeLine $line
"`r"
Invoke-Expression $line
"`r"
$v.speak("Happy Birthday, Pluralsight. Now, where's the cake?") | Out-Null
$line = 'Get-Smarter -path Pluralsight -Subject PowerShell | Where {$_.trainer -eq "Jeff Hicks"}'
TypeLine $line
"`r"
Write-Host 'Success'
Write-Host "PS C:\>" -NoNewline

"`r"

No puppies were harmed in the making of this video. Enjoy and Happy Birthday!


Behind the PowerShell Pipeline

Share this:

  • Click to share on X (Opens in new window) X
  • Click to share on Facebook (Opens in new window) Facebook
  • Click to share on Mastodon (Opens in new window) Mastodon
  • Click to share on LinkedIn (Opens in new window) LinkedIn
  • Click to share on Pocket (Opens in new window) Pocket
  • Click to share on Reddit (Opens in new window) Reddit
  • Click to print (Opens in new window) Print
  • Click to email a link to a friend (Opens in new window) Email

Like this:

Like Loading...

Related

1 thought on “Happy Birthday Pluralsight”

  1. Mike Merrett says:
    April 24, 2014 at 10:57 am

    Nice one Jeff, now where do I download that get-smarter module to upgrade my brain, and should it go in my PowerShell profile to reload it every morning upon wake up?

Comments are closed.

reports

Powered by Buttondown.

Join me on Mastodon

The PowerShell Practice Primer
Learn PowerShell in a Month of Lunches Fourth edition


Get More PowerShell Books

Other Online Content

github



PluralSightAuthor

Active Directory ADSI Automation Backup Books CIM CLI conferences console Friday Fun FridayFun Function functions Get-WMIObject GitHub hashtable HTML Hyper-V Iron Scripter ISE Measure-Object module modules MrRoboto new-object objects Out-Gridview Pipeline PowerShell PowerShell ISE Profile prompt Registry Regular Expressions remoting SAPIEN ScriptBlock Scripting Techmentor Training VBScript WMI WPF Write-Host xml

©2025 The Lonely Administrator | Powered by SuperbThemes!
%d