Stuart Greig

32 posts

Stuart Greig banner
Stuart Greig

Stuart Greig

@stuartgreigdev

Software Developer | Exploring AI & modern CMS | Building things at https://t.co/KZm4qPzIgP 🦡

Bergabung Şubat 2026
0 Mengikuti0 Pengikut
Stuart Greig
Stuart Greig@stuartgreigdev·
Found something cool today. I am moving more of my Kubernetes workflow into VS Code using the Kubernetes Tools extension. It handles cluster navigation, log streaming, and resource editing without constant context switching to the CLI. #kubernetes #k8s #vscode #devops
English
0
0
0
9
Stuart Greig
Stuart Greig@stuartgreigdev·
🐛 Debugging tip: If Vimeo iframes are breaking your browser back button, check your GTM tags. We found a tag adding `player_id` params that were polluting browser history. One disabled tag later = problem solved! ✅ #webdev #debugging #GTM
English
1
0
1
19
Stuart Greig
Stuart Greig@stuartgreigdev·
Need to process data in batches? Forget the complex math. Use .Chunk() in LINQ: 1) Takes an IEnumerable 2) Splits it into fixed-size arrays 3) No external libraries needed #dotnet #codingtips
English
0
0
0
1
Stuart Greig
Stuart Greig@stuartgreigdev·
Container stuck in CrashLoopBackOff? Running kubectl logs <pod> usually shows nothing because the new container hasn't crashed yet. The real hero: kubectl logs <pod> --previous See exactly why the last one died. #Kubernetes #K8s #DevOps
English
0
0
0
0
Stuart Greig
Stuart Greig@stuartgreigdev·
Kubernetes Secret Store gotcha that caught me out this week. Updating a secret in Azure Key Vault doesn't automatically update your Pod. It'll cache the old value forever unless you: Enable --enable-secret-rotation Use 'Reloader' to trigger a rolling restart Stop manual restarts!
English
0
0
0
0
Stuart Greig
Stuart Greig@stuartgreigdev·
Stop blindly trusting reCAPTCHA v3 success: true. That only tells you the token is valid, not that the user is human. To kill the bots, your backend needs to: Check the score (0.0-1.0) Verify the action name Set your threshold to 0.5 and adjust. #dotnet #webdev #security
English
0
0
0
0
Stuart Greig
Stuart Greig@stuartgreigdev·
Stop using OrderBy(x => Guid.NewGuid()) to shuffle arrays In .NET 8+, Random.Shared.Shuffle() is the native, zero-allocation way to handle it. Faster, cleaner, and built-in. #dotnet #csharp
English
0
0
0
1
Stuart Greig
Stuart Greig@stuartgreigdev·
Converting human-readable durations to ISO 8601 format in C#. Handles "2.5 hours" → "PT2H30M", "3 days" → "P3D". Perfect for Schema course durations, video metadata, or API responses that need proper duration formatting #csharp
Stuart Greig tweet media
English
0
0
0
2
Stuart Greig
Stuart Greig@stuartgreigdev·
Simple extension to validate absolute URLs vs relative paths. The file scheme check prevents false positives from file:// URIs on Linux systems.#csharp #dotnet #webdev
Stuart Greig tweet media
English
0
0
0
3
Stuart Greig
Stuart Greig@stuartgreigdev·
I have been using keyset pagination lately instead of skip and take in EF Core. The performance boost on large datasets is massive because it avoids the overhead of processing skipped rows. I usually stick to offset for small lists or jump to page UI. #dotnet #efcore
English
0
0
0
2
Stuart Greig
Stuart Greig@stuartgreigdev·
Migrating to .net Core Identity without forcing password resets? Use a FallbackPasswordHasher which extends PasswordHasher<TUser> to > Verify legacy HMACSHA512 hashes > Return SuccessRehashNeeded for auto-upgrade > Seamlessly migrate users on next login No need to reset passwords
Stuart Greig tweet media
English
0
0
0
2
Stuart Greig
Stuart Greig@stuartgreigdev·
Found something cool today. You can just do this now in C# 14. You can use the null-conditional operator on the left side of an assignment. Writing instance?.Property = value is perfectly valid in .NET 10. No more null checks. #dotnet #csharp
Stuart Greig tweet media
English
0
0
0
3
Stuart Greig
Stuart Greig@stuartgreigdev·
I will admit it: I am late to the Microsoft Applied Skills party. But the shift in 2026 is undeniable. No more multiple choice guessing. You get a live lab environment and a clock. Lab based validation beats theory every single time. #dotnet #azure #ai #learning
English
0
0
0
5
Stuart Greig
Stuart Greig@stuartgreigdev·
Stop letting your JSON serializer dictate your object's design. Using a private [JsonConstructor] + a Static Factory method ensures your domain objects stay valid while keeping the serializer happy. Encapsulation > Public everything. #dotnet #csharp #programming #clean-code
Stuart Greig tweet media
English
0
0
0
5
Stuart Greig
Stuart Greig@stuartgreigdev·
Got two implementations of the same service and getting annoyed by having to redeploy to switch them? In .NET 10, the Strategy Pattern + DI is the fix. Resolve implementations via config for: ✅ Environment Agility ✅ Zero-code Migrations ✅ Instant Failover 🛠️ #dotnet #csharp
Stuart Greig tweet media
English
0
0
0
2
Stuart Greig
Stuart Greig@stuartgreigdev·
@404G_ Redis, and then memcache for super high traffic items. Even on premium redis subscriptions we seem to get the occasional timeout or downtime
English
0
0
0
1
404G
404G@404G_·
Your caching solution? - Redis - Memcached - CDN caching - In-memory No caching yet
English
30
1
28
1.9K
Stuart Greig
Stuart Greig@stuartgreigdev·
@kritikakodes it's plain text up to the server but over https so no one should be able to read it, and then you just have to hope they're going to hash it on the other end
English
0
0
0
1
Kritika
Kritika@kritikakodes·
Weird security fact: Your password is never sent as plain text to the server. Most people don’t know this.
English
46
6
95
6.1K