Tim's Thoughts

The content Tim finds valuable for software developers.

Should I Use Entity Framework

My answer is typically "No". Now, "real" programmers often think I'm an idiot and database administrators typically cheer but there is much more nuance than either camp wants to admit so let's talk briefly about what should go into this choice. First, if you say there is only one "right" way,...

READ MORE

Is WinForms Dead?

Looking at the Established Choice vs. the New UIs Windows Forms or WinForms has been around since the beginning of .NET (and before that with VB6) so the question makes sense. We have WPF and UWP now so why would we ever create a WinForm project? It seems like WinForms is only for legacy support....

READ MORE

I'm Getting a "Cannot Insert the Value NULL Into Column 'ID'" Message in SQL

SQL Insert Error Message This is a fairly common issue. You go to insert data into SQL, either directly or through C# or another programming language only to get the error “Cannot insert the value NULL into column ‘id'”. It probably continues by saying “column does not allow nulls. INSERT...

READ MORE

Which Certifications Should I Get as a C# Developer?

Showing Off Your C# Skills Let’s start off by saying that getting a certification is not typically the best way to show a potential employer that you are a good candidate. There are a lot of better ways to do that. The problem with certifications is that people study for the test instead of...

READ MORE

DevOps for Databases

As part of my session titled SQL Development, Source Control, and Deployment with SSDT, here is the source code for the session: Session Source Code As a special bonus, I have created a 21 page PDF that walks you through the steps of setting up your first CI/CD pipeline for a SQL Server...

READ MORE

How to Learn C# Well

Have you ever felt like there might be gaps in your C# education? Maybe you have been working on intermediate or advanced topics but then find out that you missed something basic. Or maybe you are just now trying to learn C# for the first time and you aren't sure what to learn in what...

READ MORE

SOLID in C#

The SOLID principles are a great starting point for identifying how to build a loosely-coupled, easy-to-maintain application. Let's look at each one in order: Single Responsibility Principle (SRP)  SRP Source Code: download Open Closed Principle (OCP)  Starter Code: download Completed...

READ MORE

How to get C# work experience

How do you get work experience in a language you just learned like C#? That is a question I get a lot. It really seems like a “chicken and egg”-type of problem. In order to get C# work experience, you need to be employed but in order to be employed, you need work experience. Fortunately, there...

READ MORE

Fluent Validation in C#

Data validation is extemely important. The problem is that it can create a lot of excess code. Plus you end up in the position of having similar validation code throughout your application, violating the DRY principle. In this video, I am going to introduce you to Fluent Validation, a free tool...

READ MORE

How to Be a Great C# Developer

This post is part of the C# Advent. You can find twice-daily advent posts here. Do you know .NET Core? How about Blazor? Azure? Async? SOLID? GoF? MVC? WPF? MVVM? TDD? PRX? OK, I made that last one up but give it a minute and it will probably be a thing that you have to know. Does that ever feel...

READ MORE