The PowerShell Pay-it-Forward Award

As I was going through some things, I realized that I have a handful of author copies of my PowerShell Cookbook remaining. There are several of the first edition, several of the second edition, and several of the pocket references. After thinking about what to do with them, I hereby announce the PowerShell Pay-it-Forward Award. If you would like a free signed copy of any of these books, I have a simple request. Go forth on the internet: Stack Overflow, blogs, Twitter, whatever. Find a PowerShell newbie with a gnarly problem. Not just a syntax problem, but some hairy business problem. Work with them to solve it. Post your results back here in the comments (with a link to the interaction,) and I’ll give books to those that have helped a user (or users) the most. I’ll announce the winners on December 1st. Good luck!

Breaking Hash Codes - Part I

When we last left off, we discussed hash codes - a small unique identifier for an item based on its properties or features. There are many different ways to calculate unique identifiers for items. These different ways are called Hash Algorithms. Each serves a different purpose, but some popular ones right now are are MD5, SHA1, and SHA256. Why so many? The reason is security. Our last post finished with the question:

Ubisoft Rocksmith Review

On Tuesday of last week, Ubisoft released Rocksmith: an XBOX / PS3 / PC guitar game with a twist.

You play a real guitar.

You learn the real notes.

Your fingers hurt just like every great guitarist before you.

image

For some context, guitar has been part of my life for a long time – although my proficiency with it has waxed and waned (currently waning). I made the most progress with classical guitar, but ran into a cliff of frustration when songs started calling for notes out of the basic first few positions. A couple of editions of the PowerShell Cookbook will put a dent in your free time, so that may have something to do with it, too :)

PowerShell Wallpapers

Shay Levy, one of PowerShell’s great MVPs, has been crafting sweet PowerShell desktop backgrounds for years now. One thing I’ve always loved is that they seem to carry a message. His first wallpaper was a screaming crowd. In my head, they are people chanting for the power of PowerShell, or the IT rock star that saved the deployment. It’s been my background since he posted it, and has graced many a conference presentation. He’s just created another two with a Superman theme. It makes me think of a bunch of out-of-date systems out there needing automation - so the PowerShell IT admin superhero kicks into action :)

Developing for an International Audience

One aspect of software development (scripting included) that burns every single developer is developing for an international audience.

The most common cause of problems come from incorrect handling of dates and numbers, but there are many more.

I first cut my teeth on the topic when working on Encarta Online, via bugs teaching me the hard way! After that, I took some time to read the excellent documentation on MSDN that describes many of the intricacies: Developing World-Ready Applications, and especially Best Practices for Developing World-Ready Applications.

Enforcing Single-User Access to PowerShell Remoting

I got a question today with an interesting request – “How do I ensure that only one user can access a machine via PowerShell Remoting at a time?”

We do have direct functionality to limit multiple sessions, but it that limit applies to sessions by the same user - see: MaxShellsPerUser for full detail about that setting. If you are doing some sort of self-service portal where everybody shares the same local username / password, MaxShellsPerUser is one way to solve the problem.

Organizational Awareness with PowerShell

One of the things that’s always unsettled me a bit in a big organization is keeping yourself informed about changes that you care about, even when those changes never end up making it through the grape vine. For example:

  • Promotions. Of course you want to congratulate them!
  • Transfers. Finding out that a team has moved to another manager, but no “re-org” mail to let you know.
  • Leaving the company. Finding out that a co-worker has left the company or division.

Naturally, PowerShell is here to save the day! I’ve been running a script I call “OrgDiff” as a scheduled task now for a long time – it came about organically, and I look forward to its results every Monday.

WMRRA Taste of Racing

Last week, a co-worker mentioned a event being offered again by WMRRA (Washington Motorcycle Road Racing Association) – the “Taste of Racing”.

227781_1684774685881_1433050347_31322912_7171556_n[1]

For $20, you get to bring your bike on the track for 20 minutes. A handful of control riders take you through some familiarity laps (and keep things under control during the ride.)

222216_1684774925887_1433050347_31322913_1833109_n[1]

But then it’s just you and wide-open road.

You know those days when you get an on-ramp all to yourself and smile? Imagine 2 twisty miles of that, designed and shared by people who love it just as much as you do.

Morser - Keyboard Morse Input Device

If you’re interested in Morse Code as a hobby or just as a neat lo-fi communication mechanism, Morser will let you use your regular keyboard as a Morse keyer into any Windows application.

PowerShell and HTML5 Prototype

Every once in a while, we look to the PowerShell community for feedback on possible design directions on PowerShell. We’ve been exploring the integration of PowerShell and HTML5, and would love to get your feedback on a proof-of-concept.

This prototype uses the System.Net.WebClient class to “bootstrap” itself, and from there, awesomenes ensues.

From a PowerShell prompt, run the following command:

iex (New-Object Net.WebClient).DownloadString(“http://bit.ly/e0Mw9w")

If you like this, we’ve crowd-sourced some other PowerShell investigations in the past, as well: