Fuel Your Software Engineering With Purpose - Interview With William Ray
I had the pleasure to sit down with William Ray and hear about his career journey so far.
It's not what you'd expect.
Fuel Your Software Engineering With Purpose - Interview With William Ray
I had the pleasure to sit down with William Ray and hear about his career journey so far.
It's not what you'd expect.
One of my biggest pieces of advice for junior software engineers:
Ask questions.
Stop worrying about looking dumb. Seriously!
Your colleagues want you to level up fast.
Your colleagues want you to be able to contribute.
Your colleagues want you to be successful in your role.
Rewriting Vs Refactoring Code: How To Navigate The Two
Read it on Medium:
https://medium.devleader.ca/rewriting-vs-refactoring-code-how-to-navigate-the-two-5ffcb72afc6b
Shifting Observability Left is the wrong framing.
We're not proposing that you "move" the responsibility to dev from operations.
The idea is that "both" teams care about it and put the effort in to make it awesome. From instrumentation to pipelines, it's not one team, it's everybody.
Any #Aspire people on here? Has anyone had a way a deploy two different builds as two separate Resources? Maybe only possible as containers?
Just recorded the next #UnhandledException podcast episode with the amazing @maddymontaquila.net!! Chatting about the also-amazing #dotnet Aspire!!! Wow - we covered SO MUCH STUFF! Can't wait for this to be published πποΈ
Some software engineers never get the opportunity to work closely with customers.
When I sat down to talk with Jade Wilson, it was great to hear that her and her team DO spend time working very closely with customers.
Leverage the subject matter experts on your team, but do your homework!
If you're trying to build an understanding of an area of the code base, a product, or a service, you likely have teammates that know these areas very well.
Pocket Casts here. I've had it since before they went subscription based, so I'm grandfathered in to the features I need.
I really like FFMPEGs CLI, but this looks way more intuitive from a non-CLI user's perspective. And its self-hostable, too.
vert.sh
It's mostly written out lots of model classes, data access code, and basic wiring up of UI to services, all boring stuff that I always get bogged down in because I lose interest in typing property names over and over.
I recently realized that, for some things, I don't care how fast the AI does it. Just for fun I've had Copilot grinding on a list of features I gave it. It probably only has 2-3 hours of work over 5 days. A few times a day, I remember and flip over to prompt it to the next step.
Exploring the TryXXX pattern for Enums in CSharp
If you've written CSharp code, you've probably come across situations where we have:
- A method called Something()
- A variation of the method called TrySomething()
So what's the deal with this?
Fixing Autofac Circular Dependencies in .NET C#
My wife was using our Canon 20D for product photography. It was more work, but the pictures were so much better than her
iPhone. I know some people use their phones for stuff like that, but the photos always seemed sterile.
Have you seen these topics yet? ππ
Here's a collection of some of my more popular posts from LinkedIn. They seemed to get attention from others, so you might find them interesting!
Squeeeee!
And the victim!
You don't appreciate how rough it is until you have to be "on" all day. It's not just the performance aspect, but also constantly checking the schedule, making sure you get names right, reviewing notes, etc.
Interested in reading more about vertical slice architecture? Check out these articles!
Here are a collection of articles that I've put together on this topic!
Development Style:
I can't write tests anymore without following this layout
The triple A approach:
- Arrange
- Act
- Assert
Why is this structure helpful?
It builds clarity and simplicity into your testing process:
Or wildly out of date. I double-take every time I see something like "5 new features of C# 10".
It's really not that hard either. I'm a compete amateur, but a knowledge of the basic principles of electricity, some YouTube, and a code book gets me where I need to be. I have a retired electrician friend come take a look at some of the more complicated stuff just to be safe.
I'm in the middle of rewiring my house, which according to County records, has had decades of work done by licensed electricians. Based on what I've seen, they may have learned enough to pass the test, but they didn't believe any of it.
I'd blame AI, but these people have been writing empty corpo speak nonsense for long enough that they're where AI learned it from.
My most recent blog entry - Working Effectively with Legacy Code - where I borrow (steal) Michael Feathers' ideas and put my spin on them.
jhumelsine.github.io/2025/03/24/l...
My new Blazor course just dropped! π¦β€οΈ
This time itβs all about Authentication & Authorization in Blazor.
Entra ID, Auth0, Individual Accountsβyeah, we cover that.
Even our own auth-ready component.
Oh, and thereβs a 40% birthday discount at Dometrain!
Grab it here:
dometrain.com/course/from-...
Sometimes learning a code base by looking at code first isn't effective.
Depending on the age of the code base and the size of it, diving into the deep end of code can be a bit overwhelming.
Personally, I find stepping back from code first to understand systems can be the most valuable.
Accessing Record Types on Earlier .NET Versions
In C# 9.0 we received access to a great quality of life type called the record. Record types allowed us as dotnet programmers to skip a lot of boiler plate code, thereby saving us time and making code more readable. Wins all around!
Neither are good!