Thanks. I haven't used nix myself so I'm not sure... If you have the powershell nix package installed you should be able to use Install-Module like in any other environment.
I love having the ability to focus on the content and never having any blockers if I want to do something weird like embed a prebuilt react component for some edge cases.
I built it into the existing PowerShellAI module because I was learning as I went and I was already using it. The module already has quite a bit of adoption too so I figure it’s a good way to find bugs and get some feedback. Just launch it to a few hundred people and see what works.
Haha I didn’t expect to see my name while I scrolled through HN this morning. This is my PowerShell script I added to PowerShell Gallery this weekend. I submitted it as “Show HN” a while ago and the only feedback I got was “arrow keys are impractical” so I added basic Vim keybindings
I've always used shell scripting of various types and tend to work to whatever is available in the operating environments I'm working in.
If I'm doing stuff in Windows-land I'm going to use PowerShell because it's readily available and it's an "object"-ively good shell scripting language as it's tightly integrated with the OS (Windows treats everything as objects).
Bash is tightly integrated with the unix-like OS's where the OS treats everything as text and the shell scripting environment plays well with that. Trying to use PowerShell to integrate with tooling that assumes you want to always receive text can be a pain especially when it sends debug messages over stderr which PowerShell treats as an exception (looking at you git).
I still use pwsh on Linux for things like Github actions because being able to do something like this is nice considering how often you need to interact with JSON based apis, rather than getting the raw text of some json property using jq you get the actual type and can use .NET to deal with them:
$responseVariable = Invoke-RestMethod "https://jsonplaceholder.typicode.com/posts/1"
Write-Host "Title is '$($responseVariable.title)'"
Write-Host "Title is a '$($responseVariable.title.GetType())'"
Write-Host "UserId is '$($responseVariable.userId)'"
Write-Host "UserId is a '$($responseVariable.userId.GetType())'"
> Title is 'some text blah blah blah'
> Title is a 'string'
> UserId is '1'
> UserId is a 'long'
I think I've been using bash-like stuff for ~15 years and PowerShell for the last 3 and now that it's cross platform I reckon it's definitely worth having a look at, I wasn't so keen on learning when it only applied to Windows Server management.
I also just started using PowerShell around three years ago, when I started working in a Windows only environment. In the beginning I went through the whole circus with Cygwin, WSL, natively ported apps, etc. In the end I just decided to embrace PowerShell and it's really not bad. I quite like the object-oriented part of it.
I just installed PowerShell 7 last week to work on some scripts that required this, and I am hoping that some of the quirks of PowerShell have been solved in this version.
My whole career has been built around what you say you’re good at and I love it. I see debugging and optimising as puzzles. I started in test automation and performance engineering and went through sre and now platform engineering