Jon Hilton
@jonhilton.net
Day Job: I build modern, clean, scalable web apps | Side Hustle: Have helped over 1K .NET Web Developers improve their craft | .NET Web Developers click here ➡️ https://skool.practicaldotnet.io
Pinned
Jon Hilton
@jonhilton.net
· Nov 14
This feels like the right time to nudge people towards Skool if you feel the same as Kelsey articulates here.
I run a couple of communities over there, am a member of many more, and can honestly say I've formed more new friendships in 5 months on Skool than I ever did spending time on social media.
I run a couple of communities over there, am a member of many more, and can honestly say I've formed more new friendships in 5 months on Skool than I ever did spending time on social media.
Social media is broken. The reactions are too fast and the connections are too weak.
October 9, 2025 at 12:16 PM
This feels like the right time to nudge people towards Skool if you feel the same as Kelsey articulates here.
I run a couple of communities over there, am a member of many more, and can honestly say I've formed more new friendships in 5 months on Skool than I ever did spending time on social media.
I run a couple of communities over there, am a member of many more, and can honestly say I've formed more new friendships in 5 months on Skool than I ever did spending time on social media.
Reposted by Jon Hilton
Blazor Server Reconnection Gets an Upgrade in .NET 10 by @jonhilton.net jonhilton.net/blazor-serve... #aspnetcore #blazor
October 7, 2025 at 8:21 PM
Blazor Server Reconnection Gets an Upgrade in .NET 10 by @jonhilton.net jonhilton.net/blazor-serve... #aspnetcore #blazor
Testing using GitHub's Spec Kit to create a spec for a small project I'm working on.
As part of this it created some test content (basically markdown files with text and optional video links).
Interesting choice of test video there Claude...
As part of this it created some test content (basically markdown files with text and optional video links).
Interesting choice of test video there Claude...
October 6, 2025 at 12:12 PM
Testing using GitHub's Spec Kit to create a spec for a small project I'm working on.
As part of this it created some test content (basically markdown files with text and optional video links).
Interesting choice of test video there Claude...
As part of this it created some test content (basically markdown files with text and optional video links).
Interesting choice of test video there Claude...
Reposted by Jon Hilton
Discover a key update in #dotnet 10 that improves local development! 🔥
In this blog post, we explain how a new TLS certificate and unique local domains can solve cookie conflicts and better mimic production environments.
duende.link/arbgu89
#aspnetcore #security
In this blog post, we explain how a new TLS certificate and unique local domains can solve cookie conflicts and better mimic production environments.
duende.link/arbgu89
#aspnetcore #security
Duende Software - Identity and Access Management for .NET
We help companies using .NET to build identity and access control solutions for modern applications.
duende.link
September 29, 2025 at 9:01 AM
Discover a key update in #dotnet 10 that improves local development! 🔥
In this blog post, we explain how a new TLS certificate and unique local domains can solve cookie conflicts and better mimic production environments.
duende.link/arbgu89
#aspnetcore #security
In this blog post, we explain how a new TLS certificate and unique local domains can solve cookie conflicts and better mimic production environments.
duende.link/arbgu89
#aspnetcore #security
Well thanks a lot Storage Sense…
September 23, 2025 at 3:19 PM
Well thanks a lot Storage Sense…
Set out to do a super quick proof of concept using .NET Aspire this morning.
3 hours later I'm nearly ready to give it a go!
Where did the 3 hours go? Faffing about trying to get logged in to the correct MS accounts and directories in VS and Azure so I can deploy the damn thing… 😩
3 hours later I'm nearly ready to give it a go!
Where did the 3 hours go? Faffing about trying to get logged in to the correct MS accounts and directories in VS and Azure so I can deploy the damn thing… 😩
September 4, 2025 at 11:43 AM
Set out to do a super quick proof of concept using .NET Aspire this morning.
3 hours later I'm nearly ready to give it a go!
Where did the 3 hours go? Faffing about trying to get logged in to the correct MS accounts and directories in VS and Azure so I can deploy the damn thing… 😩
3 hours later I'm nearly ready to give it a go!
Where did the 3 hours go? Faffing about trying to get logged in to the correct MS accounts and directories in VS and Azure so I can deploy the damn thing… 😩
I started building web apps when I was 16, in my bedroom.
The first site I ever built was, objectively terrible (works with Netscape Navigator!)
But I learned so much.
The fundamentals of HTML, how to write copy, marketing (sharing the site with others, in forums etc.)
The first site I ever built was, objectively terrible (works with Netscape Navigator!)
But I learned so much.
The fundamentals of HTML, how to write copy, marketing (sharing the site with others, in forums etc.)
September 1, 2025 at 11:00 AM
I started building web apps when I was 16, in my bedroom.
The first site I ever built was, objectively terrible (works with Netscape Navigator!)
But I learned so much.
The fundamentals of HTML, how to write copy, marketing (sharing the site with others, in forums etc.)
The first site I ever built was, objectively terrible (works with Netscape Navigator!)
But I learned so much.
The fundamentals of HTML, how to write copy, marketing (sharing the site with others, in forums etc.)
Reposted by Jon Hilton
.NET 10 Preview Release 6 Tackles #Blazor Server’s Lost State Problem
www.telerik.com/blogs/net-10... by @jonhilton.net
www.telerik.com/blogs/net-10... by @jonhilton.net
.NET 10 Preview Release 6 Tackles Blazor Server’s Lost State Problem
.NET 10’s latest preview release brings a solution to the challenging issue of lost connections resulting in lost component state.
www.telerik.com
August 19, 2025 at 8:19 AM
.NET 10 Preview Release 6 Tackles #Blazor Server’s Lost State Problem
www.telerik.com/blogs/net-10... by @jonhilton.net
www.telerik.com/blogs/net-10... by @jonhilton.net
I credit these two with many of the successes I've enjoyed in the last 9 or so years…
@alexhillman.com and @amy.stackingthebricks.com
Tomorrow, Dev Builders community members get to ask them anything about building and marketing their 'thing', and I can't wait!
@alexhillman.com and @amy.stackingthebricks.com
Tomorrow, Dev Builders community members get to ask them anything about building and marketing their 'thing', and I can't wait!
July 23, 2025 at 7:10 AM
I credit these two with many of the successes I've enjoyed in the last 9 or so years…
@alexhillman.com and @amy.stackingthebricks.com
Tomorrow, Dev Builders community members get to ask them anything about building and marketing their 'thing', and I can't wait!
@alexhillman.com and @amy.stackingthebricks.com
Tomorrow, Dev Builders community members get to ask them anything about building and marketing their 'thing', and I can't wait!
Very excited to be hosting Alex Hillman and Amy Hoy for a live QnA in Dev Builders later this week…
Excited/nervous!😅
Excited/nervous!😅
July 22, 2025 at 10:00 AM
Very excited to be hosting Alex Hillman and Amy Hoy for a live QnA in Dev Builders later this week…
Excited/nervous!😅
Excited/nervous!😅
👀
June 16, 2025 at 5:32 PM
👀
If you're integrating AI into your web applications it can be a pain to write all the code to switch between different LLMs and models.
So far I'm finding Microsoft's AI Extensions provide a useful level of abstraction to minimise that problem.
jonhilton.net/ai/
So far I'm finding Microsoft's AI Extensions provide a useful level of abstraction to minimise that problem.
jonhilton.net/ai/
Beyond chat - a quick way to bring AI to your Blazor Web App
AI as an engine to power your .NET web app?
jonhilton.net
June 9, 2025 at 5:57 AM
If you're integrating AI into your web applications it can be a pain to write all the code to switch between different LLMs and models.
So far I'm finding Microsoft's AI Extensions provide a useful level of abstraction to minimise that problem.
jonhilton.net/ai/
So far I'm finding Microsoft's AI Extensions provide a useful level of abstraction to minimise that problem.
jonhilton.net/ai/
Is it now possible to automate testing your web app with a single prompt?
Playwright MCP opens up some interesting possibilities for having AI figure out how to test your app.
But the real value comes when you turn that into a repeatable spec...
youtu.be/n6F4ZsIth9c
Playwright MCP opens up some interesting possibilities for having AI figure out how to test your app.
But the real value comes when you turn that into a repeatable spec...
youtu.be/n6F4ZsIth9c
A new way to quickly test your web apps?
With Playwright MCP you can automate the browser from your AI tools.But what does this mean when it comes to testing your app?First shared with the Dev Build...
www.youtube.com
June 8, 2025 at 9:59 AM
Is it now possible to automate testing your web app with a single prompt?
Playwright MCP opens up some interesting possibilities for having AI figure out how to test your app.
But the real value comes when you turn that into a repeatable spec...
youtu.be/n6F4ZsIth9c
Playwright MCP opens up some interesting possibilities for having AI figure out how to test your app.
But the real value comes when you turn that into a repeatable spec...
youtu.be/n6F4ZsIth9c
I ran a quick experiment to see how GitHub Copilot (agent mode) handled creating the UI for a new feature in a Blazor app…
jonhilton.net/humans-vs-ai/
jonhilton.net/humans-vs-ai/
What humans and Github Co-Pilot have in common
jonhilton.net
June 7, 2025 at 10:56 AM
I ran a quick experiment to see how GitHub Copilot (agent mode) handled creating the UI for a new feature in a Blazor app…
jonhilton.net/humans-vs-ai/
jonhilton.net/humans-vs-ai/
Good code is good code.
Whether you write it, or your LLM does…
Separation of concerns, high cohesion, low coupling, all matter just as much today as they ever did.
Whether you write it, or your LLM does…
Separation of concerns, high cohesion, low coupling, all matter just as much today as they ever did.
June 3, 2025 at 10:58 AM
Good code is good code.
Whether you write it, or your LLM does…
Separation of concerns, high cohesion, low coupling, all matter just as much today as they ever did.
Whether you write it, or your LLM does…
Separation of concerns, high cohesion, low coupling, all matter just as much today as they ever did.
OK who's using AI for building apps primarily built on an MS stack?
Thinking Blazor, C# etc.
Conventional wisdom is that it's much more useful for JS (and especially React etc.)
What's your experience?
Thinking Blazor, C# etc.
Conventional wisdom is that it's much more useful for JS (and especially React etc.)
What's your experience?
May 31, 2025 at 11:00 AM
OK who's using AI for building apps primarily built on an MS stack?
Thinking Blazor, C# etc.
Conventional wisdom is that it's much more useful for JS (and especially React etc.)
What's your experience?
Thinking Blazor, C# etc.
Conventional wisdom is that it's much more useful for JS (and especially React etc.)
What's your experience?
Something I think we're going to lean into, more and more, in this new era of AI…
Human connection.
I'm just back from meeting, in Germany, 17 people, who I didn't know a month ago.
All met on Skool…
An incredible, humbling couple of days that AI can't beat...
Human connection.
I'm just back from meeting, in Germany, 17 people, who I didn't know a month ago.
All met on Skool…
An incredible, humbling couple of days that AI can't beat...
May 27, 2025 at 10:56 AM
Something I think we're going to lean into, more and more, in this new era of AI…
Human connection.
I'm just back from meeting, in Germany, 17 people, who I didn't know a month ago.
All met on Skool…
An incredible, humbling couple of days that AI can't beat...
Human connection.
I'm just back from meeting, in Germany, 17 people, who I didn't know a month ago.
All met on Skool…
An incredible, humbling couple of days that AI can't beat...
Reposted by Jon Hilton
Notable Blazor Improvements in the Early .NET 10 Previews by @jonhilton.net www.telerik.com/blogs/notabl... #aspnetcore #blazor
May 20, 2025 at 8:21 PM
Notable Blazor Improvements in the Early .NET 10 Previews by @jonhilton.net www.telerik.com/blogs/notabl... #aspnetcore #blazor
Not sure when to refactor your component down into smaller components?
Check the number of parameters (Blazor) or props (React, Svelte etc.)
How many are there, are they all relating to the same thing?
Lots of tangentially related props - Your component may be doing too much.
Check the number of parameters (Blazor) or props (React, Svelte etc.)
How many are there, are they all relating to the same thing?
Lots of tangentially related props - Your component may be doing too much.
May 19, 2025 at 10:56 AM
Not sure when to refactor your component down into smaller components?
Check the number of parameters (Blazor) or props (React, Svelte etc.)
How many are there, are they all relating to the same thing?
Lots of tangentially related props - Your component may be doing too much.
Check the number of parameters (Blazor) or props (React, Svelte etc.)
How many are there, are they all relating to the same thing?
Lots of tangentially related props - Your component may be doing too much.
You know that page in your app?
The one that's grown pretty big, has lots of conditional logic and fields.
That you find yourself spending a lot of time working in.
It probably needs breaking down into smaller components.
jonhilton.net/refactor-to...
The one that's grown pretty big, has lots of conditional logic and fields.
That you find yourself spending a lot of time working in.
It probably needs breaking down into smaller components.
jonhilton.net/refactor-to...
When to refactor a large Blazor component into separate, smaller ones?
Don't rush to break your UI down into separate components (too soon)
jonhilton.net
May 18, 2025 at 12:02 AM
You know that page in your app?
The one that's grown pretty big, has lots of conditional logic and fields.
That you find yourself spending a lot of time working in.
It probably needs breaking down into smaller components.
jonhilton.net/refactor-to...
The one that's grown pretty big, has lots of conditional logic and fields.
That you find yourself spending a lot of time working in.
It probably needs breaking down into smaller components.
jonhilton.net/refactor-to...
DevScribe just went live in the Kit App Store.
If you're sending emails and want to include code snippets, DevScribe will make sure they look great in your reader's inbox.
Markdown > Email Friendly HTML (and now integrated right into Kit's email editor)
devscribe.email
If you're sending emails and want to include code snippets, DevScribe will make sure they look great in your reader's inbox.
Markdown > Email Friendly HTML (and now integrated right into Kit's email editor)
devscribe.email
DevScribe
Convert your markdown to email-friendly HTML in one click (code snippets included)
devscribe.email
May 16, 2025 at 4:01 PM
DevScribe just went live in the Kit App Store.
If you're sending emails and want to include code snippets, DevScribe will make sure they look great in your reader's inbox.
Markdown > Email Friendly HTML (and now integrated right into Kit's email editor)
devscribe.email
If you're sending emails and want to include code snippets, DevScribe will make sure they look great in your reader's inbox.
Markdown > Email Friendly HTML (and now integrated right into Kit's email editor)
devscribe.email
I thought I was quite a patient person.
Then I had kids…
Then I had kids…
May 15, 2025 at 11:00 AM
I thought I was quite a patient person.
Then I had kids…
Then I had kids…
Forget Test Driven Development.
I practice Worry Driven Development.
It's where you feel that gnawing sense of dread, and mania, as you spend hours trying to make your code work.
All the time doubting your right to call yourself a developer.
Try it! You'll never look back.
I practice Worry Driven Development.
It's where you feel that gnawing sense of dread, and mania, as you spend hours trying to make your code work.
All the time doubting your right to call yourself a developer.
Try it! You'll never look back.
May 14, 2025 at 4:00 PM
Forget Test Driven Development.
I practice Worry Driven Development.
It's where you feel that gnawing sense of dread, and mania, as you spend hours trying to make your code work.
All the time doubting your right to call yourself a developer.
Try it! You'll never look back.
I practice Worry Driven Development.
It's where you feel that gnawing sense of dread, and mania, as you spend hours trying to make your code work.
All the time doubting your right to call yourself a developer.
Try it! You'll never look back.
Once, when working as IT technician for my local college, I broke the entire college's Internet, attempting an ISDN router firmware upgrade.
It took 2 days for the replacement to arrive.
What sticks in your mind as an "oh crap" moment, where it dawned on you what you'd done?!
It took 2 days for the replacement to arrive.
What sticks in your mind as an "oh crap" moment, where it dawned on you what you'd done?!
May 14, 2025 at 11:00 AM
Once, when working as IT technician for my local college, I broke the entire college's Internet, attempting an ISDN router firmware upgrade.
It took 2 days for the replacement to arrive.
What sticks in your mind as an "oh crap" moment, where it dawned on you what you'd done?!
It took 2 days for the replacement to arrive.
What sticks in your mind as an "oh crap" moment, where it dawned on you what you'd done?!
Some time back I heard someone offer this advice about delivering technical talks.
It really helps to move between broader context, code, diagrams… in your talk, to help people process what you're sharing.
The same goes for writing in my experience…
It really helps to move between broader context, code, diagrams… in your talk, to help people process what you're sharing.
The same goes for writing in my experience…
May 13, 2025 at 11:57 AM
Some time back I heard someone offer this advice about delivering technical talks.
It really helps to move between broader context, code, diagrams… in your talk, to help people process what you're sharing.
The same goes for writing in my experience…
It really helps to move between broader context, code, diagrams… in your talk, to help people process what you're sharing.
The same goes for writing in my experience…