Sign in

Simon Wåhlin

@simonwahlin.bsky.social
284 followers 192 following 21 posts

Cloud Architect @ Unwonted | Azure MVP, Certified Trainer Azure | Bicep | BicepLang | PowerShell I want to bridge the gap between Dev and Ops and enable secure and efficient cloud solutions on Azure for every organization.

PostsRepliesMedia
Simon Wåhlin @simonwahlin.bsky.social · 06/07/2025
You won't find two of those together
120
Reposted by Simon Wåhlin
Richard Campbell @richcampbell.bsky.social · 02/07/2025
What are the latest innovations coming in Azure? @markrussinovich.bsky.social talks on RunAs Radio at runasradio.com/Shows/Show/991 about some of the new hardware in the cloud, and how they helps with extreme optimization for specific workloads!
0115
Simon Wåhlin @simonwahlin.bsky.social · 06/07/2025
AzResourceGraph is a fast and minimalistic #PowerShell module for querying #Azure Resource Graph using #KQL. Support for paging and throttling built-in! Give it a spin and let me know how you like it! > Install-PSResource AzResourceGraph
140
Reposted by Simon Wåhlin
BicepLang @biceplang.bsky.social · 12/05/2025
🎉 Happy 5th Birthday to Bicep! 🎂💪 Today marks 5 years since the 1st Bicep commit! 📅Celebrate with us at the May 29th Community Call at 9am PST here: aka.ms/bicepcc ⭐️ Share your favorite Bicep memories via this form for a chance to be featured: t.ly/BicepBday Here's to the next 5 reps! 💪🚀
forms.office.com
Microsoft Forms
0114
Simon Wåhlin @simonwahlin.bsky.social · 12/12/2024
The PowerShell module AzBobbyTables by @palmemanuel.bsky.social is your friend for anything Azure Storage Tables
130
Simon Wåhlin @simonwahlin.bsky.social · 12/12/2024
The bulk of that cost is compute cost (mainly Azure Functions and/or Container Apps)
010
Simon Wåhlin @simonwahlin.bsky.social · 12/12/2024
For my usecases with small (usually less than 1GB) datasets and low transactional volumes (single digit users), the cloud bill is at the most a coffee a month.
210
Simon Wåhlin @simonwahlin.bsky.social · 12/12/2024
Depending on requirements for volume, availability, and performance, of course, but most of my hobby projects run on combinations of Azure Storage (blobs, tables, and queues), Azure SQL (free), and CosmosDB (free). Azure Storage is vastly underrated, in my opinion.
110
Reposted by Simon Wåhlin
BicepLang @biceplang.bsky.social · 10/12/2024
v0.32 is out! 💪🎉 We added a new deployer() function to retrieve principal Ids, fixed some bugs, and had some awesome contributions from our community! Release notes here: github.com/Azure/bicep/...! Our December Bicep Community Call: youtu.be/Qy_UJy34lXM
github.com
Release v0.32.4 · Azure/bicep
Highlights New deployer() function to retrieve ObjectId of the principal that is deploying the Bicep file (#15340) resource roleAssignment 'Microsoft.Authorization/roleAssignments@2022-04-01' = {...
0134
Simon Wåhlin @simonwahlin.bsky.social · 10/12/2024
A diet coke or a redbull, often in combination with a good black coffee is how I start the day most of my days.
000
Reposted by Simon Wåhlin
Freek Berson @fberson.bsky.social · 10/12/2024
Bicep Christmas gift: the deployer() function! 💪🎄 www.linkedin.com/posts/freekb... #bicep #community @biceplang.bsky.social
064
Simon Wåhlin @simonwahlin.bsky.social · 06/12/2024
Also super handy to find which subnet (and vnet) a given IP resides in.
010
Reposted by Simon Wåhlin
Microsoft @microsoft.com · 04/04/1975
We've always been a fan of blueskies.
Originally the default wallpaper of Microsoft's Windows XP, this photo shows green rolling hills with a vibrant blue sky and white clouds in the background. Charles O'Rear took the photo in California, USA.
674117752076
Reposted by Simon Wåhlin
BicepLang @biceplang.bsky.social · 04/12/2024
Our final Bicep Community Call of 2024 will be TOMORROW, Thursday December 5th at 9am PST! Join to hear our roadmap for the next 6 months and some exciting demos and presentations! Reach out for an invite if you did not receive one, or join tomorrow at aka.ms/BicepCcD24!
085
Reposted by Simon Wåhlin
Bart-Jan Dekker @bjdekker.bsky.social · 04/12/2024
Just had a great session by @simonwahlin.bsky.social about #Bicep and #Azure deployments. Deployment stacks and Azure templates are definitely a thing to look into!
092
Reposted by Simon Wåhlin
Jan Vidar Elven @handle.invalid · 04/12/2024
Leveling up my #bicep game with expert tips from @simonwahlin.bsky.social @espccommunity.bsky.social 🦾 #IaC
042
Reposted by Simon Wåhlin
Stefan Ivemo @stefan.ivemo.se · 03/12/2024
Just ordered some coffee from @palmemanuel.bsky.social's new side business arkanum.coffee/en/. Really looking forward to the first cup! ☕️
arkanum.coffee
Arkanum | Light Roasts & Dark Arts
Arkanum is a specialty coffee roastery based in Stockholm, weaving clear origins into mystical flavors.
021
Simon Wåhlin @simonwahlin.bsky.social · 30/11/2024
It includes child resources but it only works for a resourceGroup, it is terribly slow and exports a template, meaning I have to parse it and filter the resources I'm interested in which results in more code and worse performance than I have now.
000
Simon Wåhlin @simonwahlin.bsky.social · 30/11/2024
Yea, I basically want a command to export the full configuration of any given resource and be able to run that on a (potentially large) list of resources.
100
Simon Wåhlin @simonwahlin.bsky.social · 30/11/2024
I cuurently query a few tables in Resource Graph combined with Azure.Bicep.Types library to list potential child resource types, perform a list on each child type to get resourceIds followed by a Get on each resourceId. It works but it not very performant and throttling is a pain.
000
Simon Wåhlin @simonwahlin.bsky.social · 30/11/2024
There is also a table for appserviceresources so I can get them there, but I am looking for a generic way to get ANY child resources and not have to implement custom logic for each type.
100
Simon Wåhlin @simonwahlin.bsky.social · 30/11/2024
I mean for example given a site resoure (e.i. FunctionAp) I want to get all child resources like configs, but also extension resources like DiagnosticSettings, PolicyExemptions and RoleAssignment. I can find tables for PolicyResources and AuthorizationResources so those can be solved using ARG.
100
Simon Wåhlin @simonwahlin.bsky.social · 30/11/2024
Hey #Azure friends! I have a challenge for you. What would be the most performant way to list all potential child and/or extension resources for any given resource? REST API, SDKs or anything else is fair game, but it must be generic and work for any resource type.
111
Simon Wåhlin @simonwahlin.bsky.social · 29/11/2024
Woop! See you there!
010
Simon Wåhlin @simonwahlin.bsky.social · 29/11/2024
I'm sure mone will be ready by monday :D
media.tenor.com
a cartoon of a dog sitting in front of a laptop with a speech bubble saying it 's fine
ALT: a cartoon of a dog sitting in front of a laptop with a speech bubble saying it 's fine
020
Simon Wåhlin @simonwahlin.bsky.social · 25/11/2024
Nice! I'll have to try that one!
000
Simon Wåhlin @simonwahlin.bsky.social · 24/11/2024
That was indeed interesting! I'll have to experiment with that when I get home to a computer.
010
Simon Wåhlin @simonwahlin.bsky.social · 23/11/2024
Please test it first, I'm not sure I didn't get any typos in there ;)
010
Simon Wåhlin @simonwahlin.bsky.social · 23/11/2024
Something like this: $codeG = { class fact {static [bigint] calc([bigint]$n) {return $n -gt 1 ? ($n * ([fact]::calc($n - 1))) : 1}}; [fact]::calc($n) }
110
Simon Wåhlin @simonwahlin.bsky.social · 23/11/2024
The recursive one can be rewritten using a static method to make it faster. I think it is because it is bypassing the fairly slow parameter binding logic. It will still not have a chance against foreach, which I guess is the fastest.
110