HNHacker News
TopNewBestAskShowJobs

Sphax

516 karma · joined November 25, 2014

https://rischmann.fr
submissionscomments
Sphax··on Blackcandy: Self hosted music streaming server
The UI looks nice but it doesn't look like there's CarPlay support unfortunately.

I don't use my car that often but when I do I want to be able to access my music library. Right now I'm stuck with Plex and Prism on iOS because other solutions are not good in that regard as far as I've seen in my testing.

Sphax··on Blackcandy: Self hosted music streaming server
Hardware wise I bought a TerraMaster F4-423 used last year for about 300€. It's a great device.

Software wise, I use Fedora Server, although if I had to reinstall now I would use AlmaLinux because I don't need the new stuff coming with Fedora Server on my NAS.

Sphax··on Golang developers should try Odin
I write Go, tried Odin for about 3 weeks, decided it wasn't for me.

I appreciated some things, like the fact that the syntax is close to Go, the easy interop with C, the fast compilation, somewhat complete stdlib.

Other things I didn't like much: pointers have changed to '^', I'm sure there's a reasonable but I just don't like it, I'm used to '*'. Error handling is a PITA as far as I can remember. Meta programming felt clunky.

This is all subjective based on my limited experience, but I felt that Zig worked better for me.

Sphax··on What's New in Ruby on Rails 8
templ is great, it's been my go to when working on web stuff with Go.
Sphax··on Kafka Is Costing You Years of Engineering Time
I've been using Kafka professionally for more than 10 years, since 0.8 where consumer groups didn't even exist yet. In my opinion this post exagerates a lot of things to promote their product. We don't have giant clusters but we routinely do more than a million messages produced/s so it's not a completely trivial load.

Configuration complexity: there are a couple of things we had to tune over the years, mainly regarding the log cleaner once we started leveraging compacted topics, but other than that it's pretty much the default config. Is it the most optimal ? No but it's fast enough. Hardware choice in my opinion is not really an issue: we started on HDDs switching to SSDs later on, the cluster continued working just fine with the same configuration.

Scaling I'll grant can be a pain. We had to scale our clusters mainly for two reasons: 1) more services want to use Kafka therefore there are more topics and more data to serve. This is not that hard to scale: just add brokers to have more capacity. 2) is when you need more partitions for a topic; we had to do this a couple of times over the years and it's annoying because the default tooling to do data redistribution is bad. We ended up using a third party tool (today Cruise Control does this nicely).

Maintenance: yes, you need to monitor your stuff. Just like any other system you deploy on your own hardware. Thankfully monitoring Kafka is not _that_ hard, there are ready made solutions to export the JMX monitoring data. We use Prometheus (prometheus-jmx-exporter and node_exporter) almost since the beginning and it works fine. We're still using ZooKeeper but thankfully that's no longer necessary, I just have to say our zookeeper clusters have been rock solid over the years.

Development overheads: I really can't agree with that. Yes, the "main" ecosystem is Java based but it's not like librdkafka doesn't exist, and third party libraries are not all "sub par", that's just a mischaracterization. We use Go with sarama since 2014, recently switched to using franz-go: both work great. You do need to properly evaluate your options though (but that's part of your job). With that said, if I were to start from scratch I would absolutely suggest starting with Kafka Streams, even if your team doesn't hava java experience (I mean learning Java isn't that hard), just because it makes building a data pipeline super straightforward and handle a lot of the complexities mentioned.

Sphax··on 300k USD Donation Pledged by Mitchell Hashimoto
That’s great to see, I’ve been using zig on and off for the past 3 years, I really like the language so I’m happy to see it gaining even more traction
Sphax··on ScanOSS spams OSS projects for using profanity
I really dislike the attitude that open source maintainers should adapt their code to comply with any bullshit requirements from random companies just so they can use the code. Be grateful that someone wrote code for you to use freely.
Sphax··on Scalable Server SQLite Apps
How do people deploying SQLite server side handle migrations ? I've seen two ways but I'm still not sure which one I prefer:

* using an external tool, just like any other RDBMS (I know and use https://github.com/golang-migrate/migrate)

* embedding migrations in the app and letting the app manage migrating up.

Sphax··on Kamal 2.0 Released
Anyone using Kamal in production outside 37signals ?
Sphax··on Kamal Proxy – A minimal HTTP proxy for zero-downtime deployments
Where did you see that Kamal uses Docker Swarm ? As far as I can tell it doesn't use it.
Sphax··on Go automatically downloads a newer toolchain if needed
Setting the GOTOOLCHAIN environment variable to local disables this. I don't use nix so I'm not sure if they set it by default but you can with set it with `go env`
Sphax··on Go automatically downloads a newer toolchain if needed
I like this feature, I used this to be able to use iterators before Go was updated in Homebrew.

And yes you need to make sure GOTOOLCHAIN=auto, my colleague had to explicitly set it because it defaults to local on Gentoo.

Sphax··on OpenTelemetry Is Too Complicated, VictoriaMetrics Says
We use VictoriaMetrics at work since I think 2019 or something. The tl;dr is that it works great.

When we migrated to it we replaced 6 prometheus servers with only 1 victoria metrics server, it was crazy efficient. We ran with a single node for all our metrics for 3 years while the number of data points observed kept growing. Today we run a 7 node cluster.

I have no idea if today Prometheus could serve our workload as efficiently but for information, a provider wanted to quote us like 300k€ per year to serve the same metrics; our setup doesn't cost anywhere near that.

Sphax··on Tree-Sitter
I use neovim, the tree-sitter support is great especially with nvim-treesitter which means I can just run `TSInstall <parser name>` and I'm done.

Writing a tree-sitter parser is not that easy though. I wrote tree-sitter-templ to parse templ files and I still have a hard time identifying some parsing errors, especially since I had to implement a custom external scanner which in my experience was the source of a lot of bugs.

[0]: https://github.com/vrischmann/tree-sitter-templ

Sphax··on The EU sets the limit for bank transfer time to 10 seconds
> Charges applied by a PSP in respect to instant credit transfer transactions in euro cannot be higher than the charges applied to “non- instant” credit transfer transactions in euro.

does this mean instant SEPA transfers must now be free ? Because currently my french bank charges 1€ or something for instant SEPA transfers but doesn't charge anything for non-instant SEPA transfers.

Sphax··on Fntastic announces shutdown four days after releasing "The Day Before"
I don’t know them but it’s too bad Propnight might disappear too, some streamers I follow play it sometimes and it’s fun to watch.
Sphax··on Templ: A language for writing HTML user interfaces in Go
That's what I did for my website. Combined with goldmark for writing my pages in markdown, I really like it. It did require a fair amount of code though.
Sphax··on Is ClickHouse Moving Away from Open Source?
Exactly. I have no problem with open source developers shifting to an open core model so they can get paid, even if it means I as a user don't get these new features for free.
Sphax··on Kafka is dead, long live Kafka
Just fyi, tiered storage is coming at some point in Kafka: https://cwiki.apache.org/confluence/plugins/servlet/mobile?c...
Sphax··on Turning my Framework laptop into a tiny desktop
I still have my old 11th gen mainboard and thought about doing this but I don't really have a use case for it sadly.
Sphax··on Ask HN: What is your blogging stack?
For quite some time I used plain HTML and CSS to build both my website and blog, served directly by Caddy on a cheap VPS. I wrote the articles on Notion and exported them to HTML, then made some tweaks before publishing them.

A couple of weeks ago I built a static site generator using Go, Templ and Goldmark so now I can write my articles directly in markdown. The HTML pages and CSS files are still served by Caddy.

I’m also still using Notion to write the articles but this time exporting to markdown.

IMO, any stack that lets you write articles in markdown is enough for a blog.

Sphax··on Updates to Kagi pricing plans – More searches, unrestricted AI tools
I had no idea you could do that, super cool.
Sphax··on Updates to Kagi pricing plans – More searches, unrestricted AI tools
This is cool, even though I haven’t managed to use the monthly 1k searches from the early adopter plan yet.

I have used Kagi for the last 4 months and I’m happy with the experience. The results are good enough that I rarely fallback to Google, even for searches localized to France.

Sphax··on Blessed.rs – An unofficial guide to the Rust ecosystem
Thanks for the information. If both are now maintained I'll probably just try both crate and see which one I prefer.
Sphax··on Blessed.rs – An unofficial guide to the Rust ecosystem
I'm still not sure what crate I should use for time between time and chrono, and searching the internet gives me conflicting information:

This site says about the time crate: "The original datetime crate which was split out of std pre-rust-1.0" but as far as I can tell the time crate as it is now is not the original crate and is maintained. The book zero2prod uses chrono.

What's the recommended crate to use for time today ?

Sphax··on Framework Laptops Now Offering Refurbished Products
Yeah I'm using 3.10. I'm not sure it's overheating, I just think the CPU always gets hot even when not doing much.
Sphax··on Framework Laptops Now Offering Refurbished Products
I've been using a Framework 11th gen for work since I think May with Fedora (currently using Fedora 37 beta). For context, half of the time I use my laptop for meetings and video calls, the other half it sits on a stand plugged via USB-C to a LG 4K monitor where I've plugged my keyboard and mouse (it also charges my laptop).

The two major downsides of this device in my opinion: - the battery life is terrible. If I'm on a video call not plugged in the battery lasts 2h at most and doing basic work (writing on Notion, using Slack, etc) it's at most 5h. Compared to my coworkers with M1 laptops it's just terrible. - the CPU and device gets way too hot without even doing much. I can't recommend a Framework laptop if you intend to type on it, I can't see myself using it to work without an external keyboard. Also, when I'm on a video call the CPU fan is spinning fast which is annoying.

For video calls I'm usually plugging a Logitech thing via USB-C which acts as a webcam, a microphone and an external monitor (which is a TV for me). This works surprisingly well. Sometimes I use a simple USB-A microphone and my laptop webcam, which also works. Right now with Fedora 37 beta I can't use my bluetooth headphones because something crashes with pipewire.

When the laptop is plugged into the LG monitor everything works fine and it's basically a workstation at this point. It's fast enough for what I do which is Go and Java mainly (I have a 1165G7, 32G of RAM and 1TB of SSD).

One annoying thing with an external monitor is that _something_ causes Gnome to move my windows to random workspaces when I unlock Gnome. I have no idea why; it doesn't happen when I'm not plugged in.

If you have more specific questions I'd be happy to answer.

Sphax··on Intel Laptop Users Should Avoid Linux 5.19.12 to Avoid Damaging the Display
I booted both of my Framework laptops on 5.19.12 and it didn’t break anything. I could type my LUKS password and still get into gdm fine. I still reverted back to 5.19.11 though.
Sphax··on Virtual Tables with Zig-SQLite
I'm not familiar with pandas but looking at the website it's a data analytics tool? While virtual tables can help for that use case they can do a lot more, especially if writes are available.
Sphax··on Virtual Tables with Zig-SQLite
Hi, I am the author :) no affiliation with the french government, I just thought this particular API would be a cool example to use (IMHO this API is well done).
← PreviousPage 2 of 6Next →