Month in review: July 2025

Things that happened
I had my appraisal. It pushed me to think more seriously about how I can most effectively share evergreen knowledge with the wider company. Others have suggested this before but I've always resisted giving talks, etc. because of the time commitment (and the fact that talks at my company typically happen during our lunch breaks). I've started to give more serious thought to ways I could share knowledge and skills without it taking too much time away from development. I've also set this as a formal Objective within our HR system so I will be prompted on this again in the future.
I was going to bookmark this handy list of emojis supported by Azure DevOps, right up until the moment I realised I'd already got it bookmarked 🤦
- Similar (or possibly identical) list in a slightly different format.
Things I learnt
ASP.NET Data Protection
I had never heard of this, but needed to use it and explain some technical choices to a client. I researched this from the Microsoft documentation and felt afterwards that I had a solid understanding of it. I'm certainly no expert, but I knew enough to be able to articulate the technical options we had, make a recommendation, and implement the final decision.
I also learnt a bit more about Key Vault permissions while working out what permissions I needed to ask our IT department for in order to test this work.
fuslogvw.exe (Assembly Binding Log Viewer)
This is a tool which I've never heard of, even though it comes built into Visual Studio. In the end, it wasn't useful for me so I never really dug into what it does and how it works. It was still interesting to find out about it and run it.
You can run it within Visual Studio by opening either
Developer PowerShellorDeveloper Command Prompt, then running the commandfuslogvw.Official documentation: https://learn.microsoft.com/en-us/dotnet/framework/tools/fuslogvw-exe-assembly-binding-log-viewer
SQL Server indexes can include data from non-indexed columns.
I learnt this from a recommendation within Azure. It provided the SQL for adding an index which it recommended.
I assume this means that if a query only needs those columns, the entire query can be resolved from the index without needing to actually read the database table. I haven't read up on this or experimented with it, so I may have misunderstood this.
Git aliases can use the current date, by invoking a powershell script.
- I made use of this within one of the aliases for Managing local changes which should not be committed using only git stashes.
Things I've been thinking about
My job title is currently Senior Software Engineer. My company is planning to split the Senior grade into two, but hasn't yet published the details of how the two new grades will be defined. I'm looking forward to finding out how the two new grades are defined, and which grade I will be given.
- My company is currently hosting workshops for people to see a draft of the relevant document and provide feedback. That gave me a good feel for where I instinctively place myself, but I am still keen to look through the published document in detail and give it some proper thought.
Best ways to use GitHub Copilot, and whether I should try other AI tools professionally.
For a while my company has been paying for a Copilot license for me, and I could choose to give that up and get a licence for Claude or ChatGPT instead. They would only pay for one AI tool per person (which I think is completely reasonable) so I can't easily play around with different tools from day to day.
This policy has recently changed to give everyone a licence for Copilot and an extra AI licence if requested. I'm hoping this will help me explore other AI developer tools more.
I'm working in VS at the moment, and I suspect the Copilot tooling is far from the best available. For example, you can't drag and drop files from outside your codebase into the Copilot context. (VS Code and Rider both support this functionality.)
Things I'm grateful for
I received very speedy responses from my company's IT department when I needed them to make changes to Azure resources and update my permissions for various functionality. I really appreciate that they accept the priority we assign to our own requests, trusting us not to take the mickey.
I've had a number of opportunities recently to encourage colleagues with specific feedback, and I've also received some specific encouragements from colleagues.
- I have realised that the level of encouragement I get from a compliment is directly proportional to how specific it is.
My company is also planning some AI training for all staff, broken down by role. Knowing the person who is heading up the training, I am expecting this to be genuinely helpful, but I assume this will be delivered after the summer holidays when staff have more availability.
Things I've read / watched / listened to
These are my own reflections from the content, not necessarily the main point of the content.
Simon Willison on the Generationship podcast. I've not come across the podcast before, but Simon Willison keeps on top of the current state of LLMs and AI tools from a software development perspective so I like to hear his views from time to time to know what (in his opinion) is the current state of play. I took 4 things away from the podcast:
It's important to teach & model that we all make mistakes, and how to recover from them.
Senior developers ask stupid questions.
Psychological safety - senior developers already have a reputation for competence, so asking a stupid question won't damage their reputation.
Learning - senior developers have become senior by learning, and they have learnt by asking questions. They may have become senior by becoming comfortable asking about things they don't understand.
Publish your notes so that others can benefit from them.
I imagine my notes could be a useful reference for others at times. People do occasionally ask me about work I did in the past, or if I've ever seen a particular error before, etc. I tend to search my notes, but perhaps there would be value to others being able to do that.
I'm not sure how this would work on a commercial project, as it may not be appropriate to share notes with people who are uninvolved with the project (even within a single company).
Gen AI lowers the cost of generating little tools and side projects which might not otherwise have been worth it.
-
Perhaps the best use for AI as a dev may not be writing production code but creating useful tools.
“Most people will tell you the ideal UX for both internal and user-facing products is for you to ask a question and receive the answer, not the messy details,” says Thawar. “But if your goal is to teach people how to master something, showing them those details is better.”
Things other people said
Quote of the month
"The client is not interested in building good software, they just want to have it. They have no interest in the process." (A colleague)
This was said to me as a frustration on a particular project where this reality was causing problems, but I think it probably has a broad applicability to how software professionals liaise with clients.
I think this is a double-edged sword - it's positive to relate well to clients and understand their point of view, but can also be frustrating because they may not care about something we are passionate about.
Things I've published
Things I haven't published
Most ideas I have for blog posts never see the light of day because I don't find the time to write them. Here's what I didn't get round to.
Further thoughts on Visual Studio vs Rider (following on from Using Visual Studio after being used to Rider).
- It's still not good news for Visual Studio.
Instructions for using
fuslogvw.It turned out that this tool doesn't do what I wanted, so I ended up without a concrete use case to blog about.
I also didn't publish a write-up of how I did end up trying to find all binding errors within an ASP.NET MVC app.
Thoughts on Simon Willison's appearance on the Generationship podcast.
Brief thoughts are included above within this blog post.
I wondered about writing something a bit more reflective to follow these ideas a bit more.
How I use todoist as a professional programmer
- I'll probably write this up one day but didn't get round to it this month.
Writing a user script with AI and getting it (nearly) right first time
- I might wait until I find out how much effort it is to get the user script working fully before I blog about this.
Why I'm keen to vibe code useful tools
- Includes some thoughts about the future of AI development tools. I hope to write this at some point.




