Microsoft

New Year New Changes

It’s been quite a bit of time since I’ve made a true blog post. Things have been very exciting in my life lately and I’ve been chugging along to keep up with it.

The first thing I’d like to talk about is the first thing that happened this year. Starting January 1st 2014 I became a Technical Team Lead at Apparatus. I oversee 5 technical resources while maintaining myself as a technical resource also. It is a new challenge and one I am very eager to execute on. This position has given me the ability not only to expand my technical knowledge across multiple technologies but also to gain experience in management. I am one of the first 7 people in this role at Apparatus and I get to be part of the formation of this new level of management and it is a fantastic opportunity for me to grow.

The next thing that happened this year is the first time I’ve taught a Microsoft Official Course (MOC) which was the 20410, Installing and Configuring Windows Server 2012. It was a lot of work to prepare for this course; however it was well worth every minute of prep work as this was an extremely exciting course to teach. I had 12 people in attendance and I received lots of positive feedback on my teaching technique. The best part of that week was not the experience, or how much fun it was to present. It was the fact that one of the students in the course decided to sketch a picture of me while I was talking about IPv4 Sub-netting which I’ve included below.

Sketch223134341

PowerShell Pranks – Making Work Fun with Creepy Voices!

In every IT office I have worked in, pulling pranks co-workers has been a standard. They tend to be low-tech; co-workers leave their computers unlocked, change their background, and maybe change their Windows sound effects. They tend to be small and easy to revert.

We had an intern program over the summer in our office and a specific intern who wasn’t very wise when it came to locking his computer. We got him probably 10-15 times with a picture of David Hasselhoff in a thong. We also installed some fun Google Chrome add-ons that would change every image on the page to something else.

These got boring, which is very unusual when making someone have a sexy background. However, because we became so bored with it, we decided to take it a step further. We thought, wouldn’t it be cool to automate this with PowerShell? So our initial idea was changing the background to a random image. Looking through the ways of doing that was semi-complicated, and I was feeling lazy. So we ditched the idea, and it was on the back burner for a long time.

One evening I came home from work and stumbled upon this fantastic post on the PowerShell Sub-Reddit “A fun script for Friday – make your friend’s computer start talking to him/her.” To sum it up, it’ll use Text to Speech to have the computer talk. In the example posted, it used PowerShell Remoting. Using PowerShell Remoting for such a malicious intent may cross a line, depends on who the target is and how much you abuse it. In my case, the computers were not domain joined, and so I couldn’t use that as easily. So I decided to take my Friday night and make it quite a bit more “portable.”

Get Most Used Document Libraries and Lists in SharePoint

Lately I have been putting a lot of my time into developing useful PowerShell scripts for managing Windows environments. While working on these scripts I’ve developed some really cool 1-liner scripts that are extremely easy to run. In the below 1-liner PowerShell scripts you will get the top 10 most used Document Libraries and Lists by item count. The nice thing about SharePoint and PowerShell is the majority of the scripts written for SharePoint 2010 will work in SharePoint 2013; in this case it does!

Top 10 Document Libraries:

Get-SPSite -Limit All | Get-SPWeb -Limit All | % { $_.Lists} | ? { $_ -is [Microsoft.SharePoint.SPDocumentLibrary] } | Sort-Object { $_.ItemCount } -Descending | Select-Object Title, Description, ItemCount, ParentWebUrl -First 10

 Top 10 Lists:

Get-SPSite -Limit All | Get-SPWeb -Limit All | % { $_.Lists} | ? { $_ -isnot [Microsoft.SharePoint.SPDocumentLibrary] } | Sort-Object { $_.ItemCount } -Descending | Select-Object Title, Description, ItemCount, ParentWebUrl -First 10

PowerShell v4 Ping and Telnet Replacement

Note: Article Written on Server 2012 R2 Preview Build, the functionality may change when released.

I have been waiting for years for a good replacement for what Telnet and Ping provide me. I am thrilled to announce today I discovered a legitimate replacement has come down the line! Recently Microsoft released the Preview of Server 2012 R2 and Windows 8.1. Packaged with those is PowerShell Version 4. I have not had a chance to do a deep dive into it yet. However, I have found out that there is a cool new cmdlet called Test-NetConnection.