5 April 2022

50 links · Tuesday

My free-software photography workflow

In this article I present a step-by-step walkthrough of my photography workflow. I won't go through all the details of every piece of software I mention, they have their own manuals and documentation for that, I will highlight the operations I do. My main goal…

Unreal Engine 5 is now available!

UE5 will empower you to realize next-generation real-time 3D content and experiences with greater freedom, fidelity, and flexibility than ever before.

The Next Google | DKB

DuckDuckGo and Bing are not true alternatives – they’re just worse versions of Google. The next Google can’t just be an input box that spits out links. We need new thinking to create something much better than what came before.

Random number generator enhancements for Linux 5.17 and 5.18

The random number generator has undergone a few important changes for Linux 5.17 and 5.18, in an attempt to modernize both the code and the cryptography used. The smaller part of these will be released with 5.17 on Sunday, while the larger part will be merged …

CPU Usage Tool Improvements

  With Visual Studio 2022, we have converted the CPU Usage tool in the Performance Profiler to the profiler’s new analysis engine. This new change provides the tool with better source resolution, incremental/cancelable symbol loading, a performance boost, and …

Inline XBRL Viewer

The Inline XBRL viewer allows a user to quickly and easily review details of the tagged information in an Inline document by automatically placing a top and bottom highlight border around each tagged numeric fact and left and right …

C# 10 Advanced Language Features

Learn how to best use the advanced language features of C# . This course will teach you how to apply each of them in a real application, as well as where they are best suited.

Timer in C# - Code Maze

We can set a timer in C# to generate an event after a previously set interval and we can generate recurring events and much more...

Caching pipeline behavior with MediatR

The pipeline behavior is a wrapper in the MediatR and you can write some code before or after command or query handlers execute. Pipeline behaviors are a good fit for cross-cutting concerns in your application. For example in logging, caching, validation, tran…

Automated Tests With Feature Toggles

Feature toggles are helpful when developing new features and releasing them to production. How do they fit into your automated testing plan?

Kleisli composition

A way to compose to monadic functions. An article for object-oriented programmers.

maoni

How to Access Query Strings in Minimal APIs

I love that this job allows me to learn new stuff every day. In this case, I was building a simple API to use for some upcoming <a href="https://shawnl.ink/psauthor">Pluralsight</a> courses. I wanted to use Minimal APIs to expose some data for an old dataset f…

Web3 and the democratization of Digital Assets

My good friend and former colleague from IBM, Nitin Gaur emphasizes that the true value of web3 stems from web3 giving users the  ability to traverse the value (of digital assets) across netwo…

The Day of a new Command-Line Interface: Shell

This article continues the long-lost series on how to migrate away from terminal protocols as the main building block for command-line and text-dominant user interfaces. The previous ones (Chasing …

Handling null: optional and nullable types

Java has long been infamous for its NullPointerException. The reason for the NPE is calling a method or accessing an attribute of an object that has not been initialized. var value=foo.getBar().getBaz().toLowerCase(); Running this snippet may result in somethi…

Do founders outperform at venture capital? - Marginal REVOLUTION

In a nutshell, yes: In this paper we explore whether or not the experience as a founder of a venture capital-backed startup influences the performance of founders who become venture capitalists (VCs). We find that nearly 7% of VCs were previously founders of a…

From One to Two

In his book Zero to One, Peter Thiel writes: It’s easier to copy a model than to make something new: doing what we already know how to do takes the world from 1 to n, adding more of something familiar. But every time we create something new, we go from 0 to 1.…

Semantic Versioning for Teams | Tom Gamon

I think we need a better way to track changes within a team over time. I propose borrowing the versioning system we use in software and applying it to teams to track change over time.

Big on hacker news - John's internet house

Last week I wrote a little article entitled “Maybe you should do less ‘work’”. I posted it on hacker news and it did numbers. An hour after posting it, it had one upvote. This was already a bigger success than anything else I’ve written. Then suddenly it was n…

Quick note: 4 Reasons Writing About Software is Hard

There was a recent poll on Twitter about whether you should discount the engineering leadership advice from leaders whose in the field performance is perhaps less than ideal. Got me thinking about why writing about engineering leadership is hard. I came up wit…

There's no way to report spam on Google Drive

Recently, I’ve been getting a lot of spam notifications from Google Drive. Here’s a sample: The notifications come direct to my Android phone via the Drive app – they don’t …

Understanding the role of a principal engineer

As you continue your path on the Staff+ career ladder, you will begin to get more involved in setting the technical strategy. But defining all the staple job...