Tootfinder

Opt-in global Mastodon full text search. Join the index!

@jamesthebard@social.linux.pizza
2026-03-06 23:01:05

Work on the Sisyphus server rewrite in #golang has begun, and I forgot how much I enjoyed Gin. All of the `GET` routes have been implemented, and only a few random crashes had to be figured out...next up is the rest of the routes...lol

@jamesthebard@social.linux.pizza
2026-03-12 20:19:05

I'm done with the server for the time being, got everything working the way I want it to and the performance is where I wanted it to be at before starting some client work.
git.jamesthebard.net/jweatherl

The latest release of the Sisyphus Server (v2.1.1) in my self-hosted Forgejo showing six binaries available for download.
@al3x@hachyderm.io
2026-03-08 16:54:08

Does anyone know why #Go does not have an easy way to run all the tests in a single file?
I'm very curious to find out the reasons behind this decision.
(#golang)

@vyskocilm@witter.cz
2026-02-28 07:43:53

That was unexpected. Generic methods accepted for Go
#go

@fanf@mendeddrum.org
2026-03-19 18:42:02

from my link log —
A nasty bit of implicit timezone behavior in Golang.
dolthub.com/blog/2021-09-03-go
saved 2021-09-04

@dr2chase@ohai.social
2026-03-01 19:44:37

#golang It's a minor thing, but I am virtually certain that Renee French (artist who did the original Go Gophers) is not a fan of AI-generated Go Gopher images. That horse might be out of the barn, but so far, I have not used AI for any images except tests of the AI itself, so, not quite everyone is doing it.

@jamesthebard@social.linux.pizza
2026-04-13 22:54:37

So, the Palmetto Cyber Defense Competition is over and it was a blast even if I'm completely exhausted. However, figured I'd post some code I actually wrote and ran in the competition:
```go
package main
func main() {
for i := 0; i < 8; i {
go func() {
for {
}
}()
}
for {
}
}
```

@ripienaar@devco.social
2026-02-24 17:13:52

I cleaned up/firmed up my scaffold project to have tests, better file creation model, better docs etc.
Scaffold can be used to render many files from a template source - imagine you have a scaffold to bootstrap a Go project.
Combine this with interactive forms and you can have a interactive question-answer session to start up new projects.
I also added a CLI tool that lets you just use these features interactively.
The project

@jamesthebard@social.linux.pizza
2026-03-08 05:14:59

So, decided to get them rookie `/queue` numbers up so did a quick bit of caching. For a 12-job queue, I went from 240 RPS (Python/Flask) to 680 (Golang/Gin) then to 3400 RPS with some proper caching. The `/workers` endpoint would benefit as well, but I think its performant enough though I may end up adding a bit of caching later.
#golang

The old endpoint (left) versus the new endpoint (right).  What's more, the rewritten endpoint still had headroom resource-wise on the VM whereas the old one had maxed out the VM's CPU.
@jamesthebard@social.linux.pizza
2026-03-07 18:11:46

The rewrite of the Sisyphus server continues, I've got all of the GET endpoints and about 60% of all the endpoints finished overall. Some initial testing on the `/workers` and `/queue` endpoints show some worrying results from the old version and some great results from the new version. The `/workers` endpoint started throwing errors at about 800 RPS on the Python/Flask version (the old one), the rewrite is showing around 4800 RPS (Golang/Gin). The `/queue` endpoint doesn't show a…

The graph of the `/workers` endpoint.  The left-hand graph is the Python/Flask version (old) and the right-hand graph is Golang/Gin (new)
The graph of the `/queue` endpoint.  The left-hand graph is the Python/Flask version (old) and the right-hand graph is Golang/Gin (new)
@jamesthebard@social.linux.pizza
2026-03-09 16:19:43

The new server is online and so far the testing looks good. All the endpoints seem to be working and all of the workers and frontend are showing the correct information. I still need to do a complete test run to include encoding just to verify everything, but I'll do that after work today.
#golang #gin

The output of the Sisyphus server showing it serving up hot content to the encoding workers/clients and the frontend.
The frontend showing the current status of the encoding system.
@fanf@mendeddrum.org
2026-01-21 12:42:02

from my link log —
Building a better Golang linker.
docs.google.com/document/d/1D1
saved 2020-08-12

@vyskocilm@witter.cz
2026-01-28 08:37:53

An Honest Review of Go (from a Rust developer)
> I like Go’s condensed syntax when it comes to ergonomics. It’s way simpler to write type annotations without the colon or other characters and it saves typing time.
> I also like using uppercase and lowercase letters for visibility
benraz.dev/blog/golan…

@jamesthebard@social.linux.pizza
2026-04-04 04:58:03

The long test is looking good for the `av1an`, `mkvmerge`, and `cleanup` modules, the Golang client is doing exactly what its supposed to which is a welcome change from yesterday. I need to do long tests on the `ffmpeg` and `handbrake` modules next, but I'll handle those tomorrow.
After that, I'll update documentation, release the `2.0.0` client, and deprecate the old client.
#sisyphus

The output of the `2.0.0b2` Golang client just chewing through videos with the `av1an` client.
@fanf@mendeddrum.org
2026-01-27 12:42:03

from my link log —
Gonemaster: a Golang clone of the Zonemaster DNS checker.
codeberg.org/pawal/gonemaster
saved 2026-01-26 dotat.…

@jamesthebard@social.linux.pizza
2026-03-10 00:25:48

Initial release done for the Sisyphus server, had to do it manually for the time being which is slightly annoying. I'll deal with the pipeline much later. Posted AMD64 and ARM64 binaries for Windows, Linux, And macOS. Got a lot done over the last few days, now time to relax...lol
git…

The initial 2.0.0 release of the Sisyphus server on the ol' Forgejo server.  The release shows AMD64 and ARM64 binaries for Windows, Linux, and macOS.
@fanf@mendeddrum.org
2026-02-25 09:42:03

from my link log —
Reduced the size of Golang binaries by up to 77%.
datadoghq.com/blog/engineering
saved 2026-02-24

@fanf@mendeddrum.org
2026-03-25 15:42:04

from my link log —
Golang naming conventions: a practical guide.
alexedwards.net/blog/go-naming
saved 2026-03-24

@jamesthebard@social.linux.pizza
2026-04-05 20:05:21

After a ton of compiling, the v2 release is official. Containers all work, the client works, and now I'm gonna relax and watch some YouTube videos. Releases are available on the website though I still need to update the docs with the new "installation" process (much simplified).
Releases:

A screenshot of the Sisyphus client releases page showing the 2.0.0 release and all of the containers and binaries available for download.
@fanf@mendeddrum.org
2026-02-18 18:42:04

from my link log —
iter: a Golang implementation of C STL iterators and algorithms.
github.com/disksing/iter
saved 2019-12-16 dotat.a…

@fanf@mendeddrum.org
2026-01-18 18:42:01

from my link log —
A new Protocol Buffers generator for Golang.
vitess.io/blog/2021-06-03-a-ne
saved 2021-06-03

@fanf@mendeddrum.org
2026-01-19 09:42:01

from my link log —
Models of generics and metaprogramming: Golang, Rust, Swift, D, and more.
thume.ca/2019/07/14/a-tour-of-
saved 2019-07-21

@fanf@mendeddrum.org
2026-01-17 12:42:01

from my link log —
k6: a web load testing tool, written in Golang and configured in JavaScript.
github.com/loadimpact/k6
saved 2020-11-28