LGUG2Z

joined 1 year ago
 

I'm sure most of us have had to deal with issues reported by end users that we ourselves aren't able to reproduce

This video is an extended case study going through my thought process as I tried to track down and fix a mysterious performance regression which impacted a small subset of end users

I look at the impact of acquiring mutex locks across different threads, identifying hot paths by attaching to running processes, using state snapshot comparisons to avoid triggering hot paths unnecessarily, the memory implications of bounded vs unbounded channels, and much more

 

Sharing some numbers on what people can realistically expect with GitHub Sponsors on a moderately popular project without any external / VC / corporate backing.

 

After learning how to add an unstable overlay to nixpkgs, being able to override individual service modules from unstable was something that I still struggled with until fairly recently. Hopefully this helps someone else looking to do common-but-not-very-obvious operation.

 

In this video I discuss the trade-offs of building on top of unstable reverse-engineered private APIs, why I decided against it, and compare to similar software that chose to use them.

A couple of people who aren't particularly interested in the software itself told me that this was an interesting and engaging video on general programming approaches when building applications for closed-source systems, so I thought I'd share it a bit more widely here.

 

cross-posted from: https://lemmy.world/post/9143654

Apologies in advance for sharing two link posts here two days in a row. Unemployment may be driving me a little nuts... ๐Ÿ˜…

I've been working on Satounki since I got laid off last month. It's the culmination of a lot of experience building similar ad-hoc internal tooling at various places throughout my professional career.

Satounki already includes:

  • AWS support
  • GCP support
  • Cloudflare support
  • Auto-generated Terraform providers from the Rust API
  • Auto-generated Typescript client wrapper from the Rust API
  • Slack bot for request notifications, approvals and rejections
  • CLI for requests, approvals and rejections
  • Dashboard for exploring policies, requests and stats

The scope of this project is pretty big and I'm looking for contributors.

The majority of the project is written in Rust, including the generated Go and TS code. The stack is pretty simple; Actix, Diesel, SQLite, Tera etc., so if you have experience with writing web apps in Rust it should feel familiar!

Even if this is a totally new stack to you, this is a great project to develop some familiarity and experience with it, especially if you can help improve the quality of the generated Go and TS code at the same time!

 

I got laid off this month and have a lot of time on my hands while I'm looking for new jobs ๐Ÿ˜…

I tried making a LinkTree but the website UI for editing is so janky and frustrating, and on top of that you have to go Premium for advanced theming, again in the janky UI...

I found this great Hugo theme called Lynx and built out my own links webpage like we did back in 90s on Geocities with Dreamweaver

Some folks on Mastodon and Twitter messaged me asking for a walkthrough because there are a few rough edges that are mostly related to changes between Hugo versions and the docs on the theme, so I made this end-to-end video going from project init to deployment on Cloudflare pages with analytics enabled

It's a pretty fun project and I think it can also be useful as a "portfolio links" page for people that are looking for jobs right now