Lloyd

@lloydjatkinson
80 Followers
146 Following
343 Posts
Software engineer passionate about creating high quality systems and software craftmanship. Also into electronics, embedded systems, hardware, and other low level stuff. Also memes.
Sitehttps://www.lloydatkinson.net/
GitHubhttps://www.github.com/lloydjatkinson

Just trying to translate reality into language is a massive functional reduction....

#philosophy

Many form services are annoying and charge for basic features.

So I wrote my own. It has everything I think most people would need for personal sites and small businesses.

- Has an API allowing UI's to be dynamically be generated.
- Supports basically all HTML field types and has server side validation.
- Uses an outbox pattern to ensure reliability and retries should the mail server be down.
- Generates responsive emails.

#programming #dotnet #csharp #linux #webdev #html @dotnet

(2/2) I did try a few approaches for this and saw the same inconsistencies and bad UX.

I tried Seq + OT + .NET, then I tried Seq + otel-collector + OT + .NET.

Finally, I tried Grafana + otel-collection + OT + .NET.

I was reminded of why I avoid Grafana, both the company and the product. It might look nice visually, if you can set it up and if you can find the will to maintain some spaghetti setup of Grafana and it's 10 required products and engines.

(1/2) My first foray into OpenTelemetry was disappointing. The UI's and broken tools are a mess.

- Bad consistency
- Dozens of packages required
- Spans seem to work 50% of the time

Notice just "postgresql". No details. I have to expand it to see them. Compare with the second screenshot where I see ACTUAL details without needing to expand.

As for spans, look at that "=> 4.41s". If I'm using OT that should be a Span instead of polluting the log entries?

#dotnet #programming #opentelemetry

I discovered, to my horror, the shit legacy codebase at work that was amateurishly written does not use database transactions. For anything! There's so many places I can see where inserts and updates could be literally catastrophic.

#rant #database #sql

The reality is harsh

I am normally adverse to putting business logic in databases, but I have found a nice self contained use case for it. Instead of adding another scheduled job in my application, I use PostgreSQL's pg_cron extension.

#dotnet #csharp #postgresql #database #programming #sql

Hi, yes, welcome to Mozilla Burger. It's true our burgers come with asbestos but the good news is you can pick it off yourself. Look how easy that is. No we can't make a burger without it and let you add it yourself later. Why would we do that?
I really enjoy @lobsters but I'm finding myself bracing for every "what are you doing this week" etc type post to have the same person, religiously, doomposting and trauma dumping.

I'm migrating my site from Tailwind to https://vanilla-extract.style/. Making some progress, happy with the type safety of the design system. On the left is the current Tailwind styling and on the right is the new vanilla-extract styling.

#webdev #programming #tailwind #vanillaextract #typescript