Code With Passion

A brief insight about the person behind the Cuemon for .NET project that lets you get acquainted with the homo sapiens behind the countless zeros and ones.

Who is gimlichael?

He (gimlichael - V46.193) is the author behind this project and lives in the outer province of Denmark in a small town named Gilleleje.

My given name is Michael Mortensen and I am a self proclaimed Clean Code Evangelist and passionate developer/geek who has a professional background in both operations and development since 1999. Before my career, I started my curiosity in regards to web development in 1996 with my very first website (in plain old HTML), which strengthen my goals to become a full stack developer later on.

Besides this cool, fun and amazing project, I am also employed as a Lead Software Engineering Architect in one of the top ten largest companies here in Denmark. The driving force of my work reside in SOLID and DRY development of solutions rooted in SOA, interoperability and scalability.

Connect with @gimlichael

My passion reside with architecture, development and deployment using open-source technologies.

Having a broad knowledge on .NET / .NET Standard / .NET Core / .NET Framework it is my driving force to learn, adapt, design, develop and tweak every little bit of bits and bytes out of these platforms with the power of C#.

Michael Mortensen
Author / Contributor

Credits & Appreciation

It is no easy task to design and build an assembly family as big as the Cuemon for .NET. The following products and the associated companies is part of the development lifecycle and has one way or another contributed to the existence of this ever growing assembly family.

.NET Logo

It goes without saying, that without Microsoft .NET there would be no Cuemon for .NET.

ReSharper Logo

ReSharper from JetBrains is an indispensable Visual Studio extension that makes development, refactoring and unit testing a bliss to work with.

DocFx Logo

DocFx is used to produce documentation from source code including raw Markdown files.

Azure DevOps Logo

Azure DevOps from Microsoft is used for CI/CD integration with GitHub.

Visual Studio Logo

Visual Studio 2019 from Microsoft is used as the primary tool for writing CSharp code.

Visual Studio Code Logo

Visual Studio Code from Microsoft is used to write anything else but CSharp code.

GhostDoc Logo

GhostDoc Pro from SubMain is used to write all the source code documentation.

Ghost Logo

Ghost by Ghost Foundation is the blogging platform used by this project.

StackOverflow Logo

StackOverflow.com by Stack Exchange Inc. for providing the community for developers helping out each other.

NuGet Package Explorer Logo

NuGet Package Explorer is a very helpful tool to iron out kinks of NuGet packages.

Github Logo

GitHub from Microsoft is used to host the source code of Cuemon for .NET.

NuGet Logo

Distributed packages are based on NuGet.

History

If you by now have investigated time in Cuemon .NET Standard, you may have noticed that the naming conventions is similar to the one found in the Microsoft .NET Framework; this is by intent to adapt the fine work of the architects and engineers at Microsoft.

It is also worth mentioning, that all the assemblies are more or less strictly developed following the book; Framework Design Guidelines by Krzysztof Cwalina and Brad Abrams - a must read for all coders, programmers, developers and derived architects.


What should I call you?

It might seem trivial - but comming up with a name to a framework is no small task. In fact, the name for this framework was a combination of several things:

  • First i had the domain qmon.dk (which back then stood for Quality Monitoring)
  • Since that project was abandoned I considered using the short and handy qmon domain name
  • However I did not like having a TLD ending on .dk - it should be more generic - informative if you like
  • My light OCD convinced me that the name should have a length of six characters and represent .NET
  • Playing with "qmon" started a word procssing on "q" which ended with "Cue"
  • "Cue" + "mon" + a TLD of .NET satisfied my requirement of six characters and having a .NET representation
Without further ado Cuemon .NET Framework was born as a brand new assembly package to complement the Microsoft .NET Framework. Fun fact: the original, internal name prior to 2008 was MM.Framework.


Timeline

2008

  • Cuemon .NET Framework package was born and consists of four members
    • Cuemon
    • Cuemon.Data
    • Cuemon.Web
    • Cuemon.Xml

2009

  • Research, maturing and POC-implementations

2010

  • Project website was launched - an ASP.NET website built with Cuemon
  • The assembly package was extended with one new member and now consists of
    • Cuemon
    • Cuemon.Data
    • Cuemon.Data.Entity
    • Cuemon.Web
    • Cuemon.Xml

2011

  • Cuemon goes NuGet and was assigned the most accommodating license from Creative Commons
  • The assembly package was extended with two new members and now consists of
    • Cuemon
    • Cuemon.Data
    • Cuemon.Data.Entity
    • Cuemon.Data.Entity.SqlCeClient
    • Cuemon.Data.SqlCeClient
    • Cuemon.Web
    • Cuemon.Xml
  • Parts of Cuemon is now available through a RESTful web API

2012

  • Online and offline documentation for Cuemon .NET Framework now provided using Document! X by Innovasys
  • The assembly package was extended with one new member and now consists of
    • Cuemon
    • Cuemon.Data
    • Cuemon.Data.Entity
    • Cuemon.Data.Entity.SqlCeClient
    • Cuemon.Data.SqlCeClient
    • Cuemon.ServiceModel
    • Cuemon.Web
    • Cuemon.Xml

2013

  • The most ground breaking and codetastic year of the Cuemon project
  • Established a supportive blog for this project with insights, motives and background information
  • A new project is launched to complement this project; Nebula API - a technology neutral RESTful web API that replaces the one from 2011
  • The assembly package was extended with a new complementary assembly package for users of .NET Framework 3.5 and newer
    • Cuemon.Extensions
    • Cuemon.Data.Extensions
    • Cuemon.Data.Entity.Extensions
    • Cuemon.Web.Extensions
    • Cuemon.Xml.Extensions

2014

  • Cuemon .NET Framework Additions was renamed to simply Cuemon .NET Framework

2015

  • Cuemon .NET Framework 3.0.2015.1500 was released to CodePlex as open-source under the MIT License

2016

  • Cuemon .NET Core 4.0.2016.600 was released to CodePlex as open-source under the MIT License

2017

  • Both Cuemon .NET Framework and Cuemon .NET Core was moved to GitHub
  • Cuemon .NET Framework is no longer receiving updates leaving it stale at version 4.1.2017.400

2018

  • Cuemon .NET Core was renamed to Cuemon .NET Standard
  • Cuemon .NET Standard is divided into 23 NuGet packages
  • Cuemon .NET Standard adapts DocFX documentation
  • Cuemon .NET Framework is no longer being maintained and all NuGet packages has been removed
  • New website powered by Cuemon.AspNetCore.Pacakge
  • New blog powered by Ghost

2019

  • 5.0.2019.40 was the last version of Cuemon .NET Standard

2021

  • Cuemon .NET Standard was renamed to Cuemon for .NET
  • Removed support for .NET Standard 1.4; lowest common denominator is .NET Standard 2.0
  • Added support for .NET Core 3.1, .NET 5 and .NET 6
  • Most of the code has been refactored, optimized and unit tested to promote the word of clean code
  • Source Link enabled for your convenience; debug directly into the code of Cuemon
  • 42 NuGet packages with an additional 4 productivity App-packages
  • Added support for powerful xUnit extensions that greatly simplifies unit testing for ASP.NET Core
  • Extended current Json.NET extensions to be even more powerful

2022

  • Cuemon .NET Standard was renamed to Cuemon for .NET
  • Removed support for .NET Core 2.x and .NET 5
  • Added support for .NET 7
  • Most of the code has been refactored, optimized and unit tested to promote the word of clean code
  • 48 NuGet packages with an additional 4 productivity App-packages
  • Added support for powerful xUnit extensions that greatly simplifies unit testing for ASP.NET Core
  • Extended current Json.NET extensions to be even more powerful
  • Added support for System.Text.Json with close to same feature-set as Json.NET equivalent (or superior)
  • Removed support for .NET Core 3.1
  • Added (early) support for YAML serialization

2023

  • Added support for .NET 8 (LTS)
  • Removed support for .NET Standard 2.0 for all ASP.NET Core related projects
  • General and continued house-keeping of the projects
  • Extended unit-test to include TFM net8.0, net7.0, net6.0 and net48 for Windows
  • Extended unit-test to include TFM net8.0, net7.0 and net6.0 for Linux
Cogwheels