Get Random Entity

    async static Task<T> GetRandomEntity<T>(IQueryable<T> query, CancellationToken token)
    {
        var max = query.Count();
        return await query.Select(x => x)
            .Skip(new Random().Next(0, max - 1))
            .Take(1)
            .FirstAsync(token);
    }
Read More

Seamless UX with Blazor Part I

In my experience, simple user experiences (UX) are quite often not so simple. Given a user upload feature that allows the user to upload a file and from that action to validate the file and notify the user of various status changes. Okay, maybe, that is not too simple, but to an end-user this task does not feel too complex – or should not be complicated to the end-user.

Read More

Standup Matters

Bulb The daily standup is one of the most necessary ceremonies of Agile. It is an informational grind that gives presenters and attendees an intimate view of the happenings of a team / organization. As a developer, I love grinds, learning about the going-ons and roadblocks of my teammates is paramount.

Read More

Refinement Matters

The most important agile ceremony for a developer is: Refinement. Let us explore a little deeper into Refinement and Agile to unlock the full potential of software!

Read More

Blazor WASM/C# bool extension toggle!

I have been using Blazor WASM (WebAssembly) for some personal projects. The ability to use C# up-and-down the stack has been quite pleasant. Blazor utilizes C# on both the back-end (WebAPI) and front-end matters using WebAssembly/Razor to deliver the SPA experience.

Read More