Posts Tagged ‘juneb’


GitHub: How to update your fork

Monday, May 16th, 2016 by June Blender
Like almost everyone in the DevOps world, I use GitHub, not because I like it, but because everyone uses it. In fact, I dislike it, because it’s confusing by design. Its misleading language excludes users, rather than welcoming them. To use it, you have to forget the actual meaning of words in English, or even their technical meaning, and use them as though they are arbitrary strings. Worst of all, because most people memorize a command sequence without fully understanding how it works, when something goes wrong, it’s almost impossible to troubleshoot. Okay, enough ranting. I just discovered a solution…   More »

Exporting from Modules: A Reminder

Thursday, March 24th, 2016 by June Blender
There are so many new things in Windows PowerShell that I often assume that I know the basics. But, while working on a project about modules, I ran into some new guidance from PowerShell developer Jason Shirk and a great blog post that demonstrates that information about variables in a TechNet topic about module manifests is wrong. Here are some important reminders about modules and their manifests: By default, all functions and aliases are exported, but variables are not exported. "By default, all variables are exported" in How to Write a Module Manifest (MSDN) is wrong. This topic is outdated…   More »

Inheritance in PowerShell Classes

Wednesday, March 16th, 2016 by June Blender
If you're learning about classes in Windows PowerShell 5.0, one of the first new concepts that you'll encounter is inheritance. When you create a class that is based on another class, your new subclass or child class automatically gets the inheritable members (e.g. properties and methods) of the parent class or base class. Inheritance is a really powerful and useful concept, so it's important that you understand it. Fortunately, it's pretty easy. Also, the inheritance principles that you learn in PowerShell are also used in other programming languages, so learning them in PowerShell gives you a head start on new…   More »

My First Form: New Videos for PowerShell GUI Beginners

Monday, March 14th, 2016 by June Blender
Like most things, once you know the basics, it's really easy to build GUI applications with Windows PowerShell and PowerShell Studio. And, like most things, it's hard to learn the basics. We're here to help. We just posted a two-part series of videos. You can watch them in any order. My First Form: Build a Simple PowerShell GUI App is a step-by-step guide to building a little PowerShell GUI app that displays the versions of Windows and Windows PowerShell on your system. My First Form: Controls and Properties is like a prequel. It introduces you to the concepts of the Windows Forms controls…   More »

There’s only one right place for curly braces

Thursday, March 3rd, 2016 by June Blender
If you ever want to start an argument with programmers or scripters, mention your preferred code or script formatting habit. A tweet about the PowerShell backtick continuation character or the placement of comment-based help for a function will elicit enough reaction to bring down a small server. But nothing gets people more riled up than the position of curly braces in a script block. On the same line or a separate line? From First, PowerShell MVP Aleksandar Nikolic will remind you (and rightly so!) that "curly braces" is redundant, because all braces are curly. That's how you distinguish braces…   More »

Finding PowerShell 5.0

Friday, February 26th, 2016 by June Blender
Updates: We have updated this blog post to reflect these changes. Windows Management Framework 5.0 RTM, which includes Windows PowerShell 5.0 for systems earlier than Windows 10, is now released. Windows Management Framework 5.0 is now available in the Microsoft Update Catalog. There are some amazing new features of Windows PowerShell 5.0. Some of them, including PowerShellGet, are available in Windows PowerShell 3.0 and 4.0. But, many very useful features, including the new advanced features of DSC, PowerShell classes, the information stream, remote debugging, copying between sessions, and advanced logging are supported only in 5.0. Unlike previous releases, Windows PowerShell…   More »

Is there a PSEdit for PowerShell Studio?

Wednesday, February 24th, 2016 by June Blender
My friend, Thom Schumacher, who has been leading the Arizona PowerShell User Group for the past few months, is getting to know PowerShell Studio. Like many of us, he came to PowerShell Studio from PowerShell ISE, so he looks for the "ISE way" to do things in PowerShell Studio. "How do I use PSEdit in PowerShell Studio?," Thom asked on Twitter. Here's my answer. Um, you don't need it Being very literal, you don't need the PSEdit function in PowerShell Studio. The PSEdit function, which is defined in and works only in PowerShell ISE (not in the ISE module), opens…   More »

Automation — in Science

Friday, February 19th, 2016 by June Blender
I recently had the great honor of attending my eldest son's Ph.D. thesis defense. It was one of those mommy moments -- you know, "my son the doctor." Jackson Cahn, Ph.D. with his parents, June Blender and Andy Cahn Photo by Ron Rogers Although I'd discussed my son's work with him for years, I didn't expect to understand much of the advanced chemistry or protein engineering parts of his thesis defense presentation. But, I was surprised to see that one element of his talk was exceedingly familiar. He explained something about metabolic pathways and a successful manipulation of an enzyme…   More »

Update-Module 5.0 adds, not updates

Wednesday, February 17th, 2016 by June Blender
Applies to: -- Windows PowerShell 5.0.10586.63 -- PowerShellGet I'm a huge fan of sharing Windows PowerShell modules and making them easy to find (Find-Module), view (Save-Module), and install (Install-Module). So, I truly love the new PowerShellGet module. However, you really need to understand how it works before you use it. Otherwise, you might end up with commands and modules that don't work correctly (or at all) or don't do what you expect. Or, you might download modules with commands that shadow or hide commands that your scripts run. Update-Module is one of the really useful cmdlets in PowerShellGet, but if you don't know…   More »

Using Group-Object to Detect Command Name Conflicts

Wednesday, February 10th, 2016 by June Blender
The Group-Object cmdlet, one of the original provider cmdlets, is as old as Windows PowerShell. It was introduced in version 1.0 and hasn't changed at all since then. But, it is one of my favorites. (You can tell when I love a cmdlet by the number of examples. Group-Object has 9!) In fact, when you use it frequently, you begin to see groups as a path to many solutions. Group-Object groups objects by the values of a property that you choose. So, it's a quick way to find the property values that appear in a data set. Which domain controllers are used by users…   More »