Open in app

Sign In

Write

Sign In

Mark Jordan
Mark Jordan

256 Followers

Home

About

Published in Ingeniously Simple

·Mar 10

Process is an excuse to not think

What is “process”? Let’s say process is a rule that you follow instead of independently deciding what to do. For example, daily standups are a process: everyone agrees to meet up at a certain time each day rather than arranging ad-hoc catchups. Another example of process is code style: we…

Agile

2 min read

Process is an excuse to not think
Process is an excuse to not think
Agile

2 min read


Published in Ingeniously Simple

·Aug 22, 2022

Easy GDPR-safe exception messages with C# interpolated strings

How a brand new C# feature can help with safe, painless, detailed exception reporting. Let’s say you’re writing an application that reads config files, and you need to handle errors: try { config = ReadConfig(configFilePath); } catch { throw new MyAppException("Failed to read config"); } This is largely sensible code…

Csharp

4 min read

Easy GDPR-safe exception messages with C# interpolated strings
Easy GDPR-safe exception messages with C# interpolated strings
Csharp

4 min read


Published in Ingeniously Simple

·Apr 29, 2022

.NET benchmarking and profiling for beginners

There comes a time, for most programs, when we need to make them faster. If you’re new to .NET, or have only tried profiling tools in older versions of .NET Framework, you might not be familiar with what tools are available for .NET Core / .NET 5. …

Software Engineering

7 min read

.NET benchmarking and profiling for beginners
.NET benchmarking and profiling for beginners
Software Engineering

7 min read


Published in Ingeniously Simple

·Sep 16, 2021

Typescript “casts” are not casts

At Redgate we recently ran an internal typescript training course, and I wanted to highlight a common misconception I saw a couple of times. To explain what I mean, let’s compare some similar-looking code in C# and typescript. …

Typescript

4 min read

Typescript “casts” are not casts
Typescript “casts” are not casts
Typescript

4 min read


Published in Ingeniously Simple

·Apr 27, 2021

How to teach things badly

Today’s idea isn’t directly technical, but by the end it should hopefully be clear how it can apply to programming and software development in general. Recently I’ve been caught up in watching chess videos on Youtube. …

Chess

3 min read

How to teach things badly
How to teach things badly
Chess

3 min read


Published in Ingeniously Simple

·Mar 9, 2021

Efficient React editing with vim-surround

What makes learning vim worthwhile? While I’m far from a vim guru, and it often gets in the way, it speeds up editing code to the point where I think it’s definitely worthwhile. …

React

4 min read

Efficient React editing with vim-surround
Efficient React editing with vim-surround
React

4 min read


Published in Ingeniously Simple

·Jan 4, 2021

Managing unmanaged objects in C#

A couple of months ago, we ran into a tricky race condition with the way we were handling temporary files. It took a while to track down, but ended up being a good example of how C#’s garbage collection (GC) works, so I wanted to turn it into a blog…

Software Development

6 min read

Managing unmanaged objects in C#
Managing unmanaged objects in C#
Software Development

6 min read


Published in Ingeniously Simple

·Jun 20, 2020

Building a cli parser from scratch

There are plenty of CLI parser libraries out there for pretty much every programming language under the sun. However, sometimes you might not find one with the right combination of features you want, or maybe you just want to understand what makes them tick. …

Software Engineering

10 min read

Building a cli parser from scratch
Building a cli parser from scratch
Software Engineering

10 min read


Published in Ingeniously Simple

·Mar 31, 2020

Being deliberately meaningless

A quick one today: just a common thread between a bunch of different ideas. …in examples Metasyntactic variables (foo, bar, baz, etc) are an obvious example of being deliberately meaningless. …

Software Development

3 min read

Being deliberately meaningless
Being deliberately meaningless
Software Development

3 min read


Published in Ingeniously Simple

·Feb 21, 2020

Command/query objects and beyond

First, a quick story: Recently I’ve been reworking a Redgate-internal chatbot I wrote a few years ago. It’s done pretty well over the years, but I wanted to take it off the random VM it was running on and make it cloud-hostable. The biggest change required was to rewrite the…

Software Development

5 min read

Command/query objects and beyond
Command/query objects and beyond
Software Development

5 min read

Mark Jordan

Mark Jordan

256 Followers
Following
  • Julia Hayward

    Julia Hayward

  • Lena Raine

    Lena Raine

  • Jenn Schiffer

    Jenn Schiffer

See all (5)

Help

Status

Writers

Blog

Careers

Privacy

Terms

About

Text to speech