Skip to main content

Command Palette

Search for a command to run...

Month in review: July 2025

Updated
8 min read
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 🤦

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 PowerShell or Developer Command Prompt, then running the command fuslogvw.

    • 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 can pin part of my screen using ShareX.

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.

  • From Memo to Movement: The non-obvious insights, tactics and workflows Shopify used to bring an ambitious memo to life

    • 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.

More from this blog

T

Tim talks tech

76 posts