121: Data Types: DateTimes Part 4.
Dates and times are a lot more complicated than we normally realize. This episodes explains durations.

Dates and times are a lot more complicated than we normally realize. This episodes explains durations.
So you think you know how to use the DateTime struct in C#? You might be surprised.
Dates and times are a lot more complicated than we normally realize. Having a specific data type to manage all the details is crucial.
Do I really have to follow software licenses?
Dates and times are a lot more complicated than we normally realize. Having a specific data type to manage all the details is crucial.
If you need floating point values but find the accuracy of floats and even doubles to cause problems, then consider using the decimal type.
You need more than a bunch of numbers and logic to write an application. You need text and working with individual characters is not enough either.
You need more than a bunch of numbers and logic to write an application. You need text and working with individual characters is not enough either.
Is there any point in learning how to code when I can just use the source code from another app?
You need more than a bunch of numbers and logic to write an application. You need text and working with individual characters is not enough either.
You will often need multiple variables of the same type and while you can sometimes just create separate variables with their own names, what if you do not know ahead of time how many will be needed?
If you want to work with fractional values instead of just whole numbers, then floating point types are usually a good choice. They are different enough from ints that you need to understand how to use them.
What would you rather see? 1, 2, 3, or red, green, blue? Enums allow you to give meaningful names to values. Seems simple, right? It is, except for a few things you should be aware of.
I met a person recently who has a college degree in computer science. He works at a local pizza shop. The question this week is not really a question but my thoughts on the situation. What went wrong? Or did anything go wrong?
Void and bool are simple types that you can use with very little explanation. There are a few details that you should be aware of though.
You will probably have one or more ints in almost every method and class you write. They are everywhere so you really should know how to use them.
You will probably have one or more ints in almost every method and class you write. They are everywhere so you really should know how to use them.
Chars and bytes form some of the most basic data types available. But what are they really? And what can you do with them?
How do I use my foundational skills in programming to start making useful software?
Callback methods can also be either synchronous or asynchronous and add a whole new dimension to how you can approach problems.
What are synchronous and asynchronous methods and how do you use them?
There is a big problem with Singletons especially in the C++ language. It is not obvious how to get them to work with multiple threads. You want one instance in your entire application and how do you handle the race condition when multiple threads ask for the instance at the same time?
Volatile is a keyword that allows you to turn off certain optimizations. Unfortunately, it is also used incorrectly many times as a way to synchronize threads.
Do it in place. What does that mean?
What if you just want to limit how many things you can have or can be done? This episode will explain another side of the semaphore sometimes called a counting semaphore.
Semaphores are often confused and characterized as just a more general form of a mutex. There are actually some big differences though.
This episode dives deep into locks. How do they work? And then explains how you can use this to implement a reader-writer lock.
If you are not careful, you can cause a processor to come to an immediate and full stop while it waits for data to move around in memory. That is probably not the performance boost you were looking for.
Do you get more value out of articles, videos, or podcasts?
How do you assign work to threads? This episode explains several ways you can think about this and when to use them.