Opinion Time: Should Razor Pages Be the Default for ASP.NET Core Apps?

A few days ago I published the latest ASP.NET Core Demystified post which was all about Razor Pages and demonstrated how to build an app using them. In the process of writing that post, I realized that I had a deep, pervasive problem with one of Microsoft's decisions regarding Razor Pages, and I need your help to convince me either that I'm right, I'm wrong, or I'm making a mountain out of a molehill (or even all three). Let's... Read more >

Opinion Time: Should Read-Aloud Corner Be Its Own Blog?

I'm having this dilemma, and I need your help, dear reader, to solve it. I recently began writing a new series of posts called the Read-Aloud Corner, and it is so much fun to write that I think I'll keep doing it for a while. Read-Aloud Corner is where I write about our experiences reading various books aloud and what my kids thought of them, as well as tips on how other families might follow in our footsteps. We (me... Read more >

Yep, We Should (Almost) Always Build An API

Last week I published a post entitled Opinion Time: Should Developers ALWAYS Build an API?. I got quite a bit of useful feedback on that post, and so I decided that I needed to publish a followup post so that I could parse and interpret all the different opinions you lovely readers gave. I was expected something of a heated fight, or at least a good match, but it turned out to be a slaughter. One side clearly and convincingly... Read more >

Opinion Time: Should Developers ALWAYS Build an API?

There's been some talk in my office lately about the practicality of always building API (Application Programming Interfaces) backends for our apps. Some of my teammates argue that it ensures portability, that we can move to newer technologies more readily. Others agree, but say the primary reason is to provide a layer of abstraction between the code and the data (since enough abstractions can solve many problems). I personally have a much more basic problem. I'm at a crossroads, and... Read more >