Motivating and Retaining People I mostly blog about tech topics, and don’t fancy myself to be a JD Meier by any means.
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...
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 me...
Can You Name Top C# IDEs Provided by Microsoft? I Couldn't -- Visual Studio Magazine Epic fail by editor of Visual Studio Magazine, who has never even HEARD of Browxy.
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,...
Windows 11 See the Future of Hybrid Work | Microsoft Find out about the upcoming features in Windows 11 Pro that will empower hybrid work for your business.
Warp: The terminal for the 21st century Warp is a fully native, GPU-accelerated, Rust-based terminal. No Electron or web-tech. 60fps on 4K screens.
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 r...
Switching from pyenv, rbenv, goenv and nvm to asdf - @yujinyuz Learn how to switch from different version manager to a more generic version manager
How We Built r/Place - Upvoted Brian Simpson, Matt Lee, & Daniel Ellis(u/bsimpson, u/madlee, & u/daniel)
PIPEFAIL: How a missing shell option slowed Cloudflare down This post tells the story of how a missing shell option called “pipefail” slowed Cloudflare down.
On fixing a bug (and all its siblings) with a forward looking view We run into a strange situation deep in the guts of RavenDB. A cluster command (the backbone of of RavenDB is coordinating action in a distributed cluster) f...
Working on two git branches at once with git worktree In this post I describe how you can use git worktree to check out multiple branches at once, and some scenarios in which this can be useful
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.
A Tale of Yak Shaving: Accidentally Making a Language, for an Engine, for a Game There's an old mantra in game development:
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...
csharplang/checked-user-defined-operators.md at main · dotnet/csharplang The official repo for the design of the C# programming language - csharplang/checked-user-defined-operators.md at main · dotnet/csharplang
csharplang/auto-default-structs.md at main · dotnet/csharplang The official repo for the design of the C# programming language - csharplang/auto-default-structs.md at main · dotnet/csharplang
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,...
Architecture & DDD Kata: Online Car Dealership I’ve just created a new kata which you and your team/friends can use to practice your architecture and domain-driven design skills. It’s…
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?
How to Implement Vertical Slice Architecture | Gary Woodfine vertical slice architecture separates applications into "vertical slices", representing the part of each layer that creates a specific feature
Handling date strings in TypeScript - LogRocket Blog When dates are string variables, TypeScript infers the string type by default, making them tough to handle.
Yak Shaving Defined - I'll get that done, as soon as I shave this yak. I've used the term Yak Shaving for years. You're probably shaving yaks at work ...
03.30.2022 - TypeScript/How some utility types are implemented TypeScript provides several [utility types](https://www.typescriptlang.org/docs/handbook/utility-types.html) to help us manipulate types easier, like: `Parti...
ShadowRealms – an ECMAScript proposal for a better `eval()` This blog post describes the ECMAScript proposal “ShadowRealm API” by Dave Herman, Caridy Patiño, Mark S. Miller, and Leo Balter.
Make all properties optional using Partial in TypeScript The utility type Partial<Type> makes all properties of a type optional. Using a scenario, let us try to understand Partial<T> in TypeScript. So, you have a type called Product, that is …
Kleisli composition A way to compose to monadic functions. An article for object-oriented programmers.
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 data...
Why I ditched cloudflare (and you should too) • Socialism.tools I chose Cloudflare as my registrar & nameserver. Months later, Cloudflare support threatened to ban my entire account and put me at risk.
Melb.NET April 2022 HYBRID Meetup, Tue, Apr 5, 2022, 5:00 PM | Meetup Tue, Apr 5, 5:00 PM AEST: First **IN PERSON** and online event for 2022!!!! We’re so excited to welcome some of you back in person for this meetup as well as continuing to support our community onl
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 so...
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...
Texture sampling tips | solidpixel - Real-time rendering adventures Some technical ramblings on real-time graphics, texture compression, optimization and performance analysis tools.
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 ...
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 ...
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 u...
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...