Everything It Takes to Self-Host a Ghost Blog with DigitalOcean

I use a custom setup to run both of my blogs, Exception Not Found and Read-Aloud Corner. For these sites, I use Ghost as my blogging engine, and it has been a joy to use. But because I self-host both of my blogs, the setup to do so was not simple or intuitive, and I ended up spending a lot of time and effort getting these blogs up and running because there was no single tutorial for my situation. Server... Read more >

Read-Aloud Corner Is Now It's Own Blog!

About a week ago I asked for my readers' opinions on what to do with the Read-Aloud Corner series, and the response was pretty consistent across the board. "I'd suggest separating them, for SEO and reasons as mentioned by others. I think you'll get more eyes on that excellent content that way." -Rhynri "Personally I would prefer if the read aloud series is published elsewhere. I love reading the technical and developer posts, but find myself rather... 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 >

Setting a Custom Default Page in ASP.NET Core Razor Pages

I've been messing around with ASP.NET Core 2.0 since its release, and in particular the new Razor Pages feature which seems like WebForms done right. I'm not totally convinced that Razor Pages is a good idea for my apps, but for now it's been quite interesting to learn. There was, however, one particular thing that bugged me while I was trying to set up a sample project for a forthcoming post: how in the heck do you change... Read more >

ASP.NET Core Demystified - Action Results

Next up in our ASP.NET Core Demystified series, we will discuss and demo a whole bunch of classes which implement the IActionResult interface and inherit from the corresponding ActionResult class. These classes are used as responses from controller actions, and include redirecting to another site, redirecting to a different controller action, returning a JSON object, and returning a file to the browser. In this post, we will first discuss the IActionResult interface and what it needs, and then we... Read more >

Introducing the Read-Aloud Corner

Announcement (26 Aug 2017): The Read-Aloud Corner is now it's very own blog! Check it out at the new location. I'm a huge fan of reading aloud to your kids. Every night for the past year, me and my three children have read a chapter of book aloud, right before going to bed. I can honestly say it's been one of the best things I've ever done both with, and for, my kids. Reading aloud provides all sorts of benefits... Read more >