Sending emails is a common feature in software these days. A user signs up, we send an email. A user places an order, we send an email. This sort of action happens all over. So it isn’t surprising that as software developers, it’s pretty common for us to include email functionality in the systems we…
Read more…
Code reviews are one of the best things you can use as a proxy for how things are going on a project. Just the lack of code reviews is very telling. But how long it takes to do code reviews can also be telling, as can the size of code reviews. If you have to…
Read more…
.NET Framework 4, in some ways, is “the” .NET. This is when .NET felt like a super solid platform that didn’t need anything else. It was great. Ironically, I don’t think .NET 4 added much over .NET 3.5, but it felt like a clean solution was fully brought together. It was released alongside Visual Studio…
Read more…
SqlConnection, SqlCommand, SqlDataReader, and SqlDataAdapter are classes we were very familiar with in 2008. If you wanted to write a database query, you were probably using a combination of these classes. Things changed in 2008 with the release of .NET 3.5 SP1, giving .NET a Microsoft-provided Object-Relational Mapping (ORM). A lack of ORM was becoming…
Read more…
AWS has a lot of great services, but one of the most useful is also one of the least sexy: a basic user management service called Cognito. Cognito provides authentication for users in the cloud. For those of us used to the Azure world, think Azure B2C but with a less awkward configuration. I actually…
Read more…
We have covered a lot of history in this series so far. We have covered many incremental improvements to C# and .NET. Things such as Auto-Implemented Properties were improvements, but they felt like incremental improvements to the language (although I think that one notable exception would be the addition of Lambda expressions). LINQ wasn’t a…
Read more…
.NET 3 was a pretty big change, maybe the most significant change since the creation of Microsoft .NET Framework. It was fundamentally changed in ways that brought in many amazing features into the language. Here I will cover WPF, WF, WCF, and Auto-Implemented Properties. The first change was WPF, which stands for Windows Presentation Foundation….
Read more…
AWS Lambdas are, from a technology perspective, a lot like Azure Functions. They provide a simple and cost-effective way to host code in the cloud, and they can respond to a variety of events such as HTTP requests or queue triggers. Azure DevOps is a platform for hosting projects in the cloud, including task management,…
Read more…
“We learn from failure, not from success!” – Abraham Van Helsing, Dracula Last week, I gave a presentation called “Leave Nothing to Chance” at the Nebraska.Code() conference. The essence of the talk was the value of locking down all the little decisions to better ensure success in your software projects. I started the talk with…
Read more…
When .NET Framework 2.0 was initially released, I was working on a .NET Framework 1.1 project that was becoming a bit of a pain. Moving to 2.0 seemed like just the thing the project (and I) needed. The addition of support for generics in 2.0 was a win in and of itself, but also adding…
Read more…