News for hackers. Stuff that matters.

coxley

Re:Show HN: ZeroFS – A log-structured filesystem for S3 on Thursday July 02, 2026 @10:29AM (#48762176)
From the docs:

> ZeroFS fetches object data in 128 KiB parts

Read/write operations in object storage are _far more_ expensive than stored bytes. I'm always afraid of anything that abstracts over S3/GCS access specifically for that reason.

A pure Go, in-memory Cassandra emulator

Technically for work, but it was during a hackathon so we could reduce the amount of tests we need to run against real or containerized instances. Go as the language just because that's the stack interacting with it the most.

Re:Setting up a free *.city.state.us locality domain on Thursday May 14, 2026 @08:21AM (#48134384)
Yeah... my .com renewal lapsed due to an expired credit card, and it was snatched before I realized it. They've always wanted $2k for it.

Even if I was OK paying in principle, that's too much for a personal blog that gets one post every 4 years.

Re:Fontcrafter: Turn Your Handwriting into a Real Font on Monday March 09, 2026 @08:36AM (#47308257)
Right!? My mind teleported back to the TechTV era for a second.
Re:Why users cannot create Issues directly on Friday January 02, 2026 @01:36PM (#46467853)
Not to mention you can restrict who can file issues with permissions. So you have a forcing function, whereas hoping tags are correctly applied is a never ending battle.
> Author: frontend technical lead, setting high code standards

Haha, to be fair it's common to half-ass personal projects even if it's your primary domain.

Off-topic rant: I hate when websites hide the scrollbar. By all means, apply minimal styling to make it cohesive with the website background and foreground. But don't completely hide it.

This is included on that page's stylesheet:

    ::-webkit-scrollbar {
        width: 0;
        height: 0;
        display: none;
    }
Re:Look Out for Bugs on Monday September 08, 2025 @08:14AM (#45167348)
You can definitely use this approach for large projects. No matter how big, at some point you are just reading a function or file. You don't need to read every single file to find bugs.

This can be combined with a more strategic approach like: https://mitchellh.com/writing/contributing-to-complex-projec...

Re:A PM's Guide to AI Agent Architecture on Thursday September 04, 2025 @04:52PM (#45132060)
Well said!
Re:Monodraw on Wednesday August 27, 2025 @12:51PM (#45042069)
Both would be sick! I do spend quite a bit of time making my own "tables" and re-arranging things.
Re:Monodraw on Wednesday August 27, 2025 @08:55AM (#45039003)
Are there any enhancements that you've wanted to do, but haven't had the time?

I'm a huge fan, and am surprised how stable Monodraw has been for me. I've kept a single, growing document open as a scratch pad for the last three years. The only downtime was converting it to the new-ish file format haha.

Re:Going faster than memcpy on Monday August 11, 2025 @09:01AM (#44863630)
Ha, I love the project name "Shadesmar". Journey before destination, friend. :crossed-wrists:
Re:Go Allocation Probe on Tuesday July 22, 2025 @04:17PM (#44652495)
> because interface{} is always counted as escaped from the stack

Not quite - if the function accepting interface{} can be inlined (and other heuristics are groovy), then it won't escape.

Trivial example but it applies to real-world programs:

    > cat main.go
    package main
    
    import "github.com/google/uuid"
    
    func main() {
            _ = foo(uuid.NewString())
    }
    
    func foo(s any) string {
            switch s := s.(type) {
            case string:
                    _ = "foo:" + s
            }
            return ""
    }
    
    # Build with escape analysis
    > go build -gcflags="-m=2" main.go
    # command-line-arguments
    ./main.go:9:6: can inline foo with cost 13 as: func(any) string { switch statement; return "" }
    ./main.go:5:6: can inline main with cost 77 as: func() { _ = foo(uuid.NewString()) }
    ./main.go:6:9: inlining call to foo
    ./main.go:6:24: uuid.NewString() does not escape
    ./main.go:6:9: "foo:" + s does not escape
    ./main.go:9:10: s does not escape
    ./main.go:12:14: "foo:" + s does not escape
Re:I want an iPhone Mini-sized Android phone (2022) on Thursday July 17, 2025 @08:05AM (#44592387)
That makes sense.

I love my iPhone 13 Mini. Its only issues are battery life (now), and non-competitive camera. I'm personally happy with the photos it takes, but then I look at my girlfriend's shots and get FOMO.

While I doubt it's economical, I'd love a small, simple phone with juiced up camera. I'd be fine with worse battery life as external batteries can remedy that in a pinch.

I've been using Otter for ~2(?) years, and it's a good time. This post made me realize we should upgrade to v2, as we've had a craving for async refresh.

Thanks to maypok86 for their dedication. The long comment threads on Ristretto issues are endlessly informative and entertaining. ;)

Re:OpenTelemetry for Go: Measuring overhead costs on Monday June 16, 2025 @03:28PM (#44292649)
The OTel SDK has always been much worse to use than Prometheus for metrics — including higher overhead. I prefer to only use it for tracing for that reason.
Re:Jokes and Humour in the Public Android API on Monday June 16, 2025 @08:44AM (#44289017)
For many years at FB, suffixing dangerous or really-deprecated tokens with `_DO_NOT_USE_OR_YOU_WILL_BE_FIRED` was the standard. Everyone[^1] was in on the joke.

In the middle of the pandemic when ~50% of the workforce had started post-2020, it and other things became complaints for causing fear/uncertainty. We didn't do the best job on-boarding remote people and making them feel part of the culture at that time.

[^1]: It was a big company so this statement could only be true in the circles I had access to.

Re:Plain Vanilla Web on Monday May 12, 2025 @09:31AM (#43962687)
Thank you! This is the resource I've been wanting to hand-feed web components to me.

Looking forward to playing around with some personal projects. :)

Re:Easier Layout with Margin-Trim on Thursday May 01, 2025 @10:40AM (#43858299)
This is awesome — but sucks that support isn't widespread yet.
I work with Bigtable a lot, and this is really cool. :)
Re:Expect – Linux tool for automating interactive programs on Saturday August 31, 2024 @10:37AM (#41409194)
Expect helped launch my early career in programming.

Automating tedious tasks as a network engineer and sysadmin motivated me to learn proper software development. If gluing together TCL/tk scripts could make my life easier, imagine what larger programs would do.

The good days.

Good joke and good follow-through, haha.
Re:Tmux is worse-is-better on Saturday May 25, 2024 @04:07PM (#40477471)
Like some others in the thread, I started using Zellij last year and boy is it nice.
On a version of Chrome from two days ago, and still blocked from visiting the site. What an aggressive, false positive, worthless check.
They're pleasurable when you're the only author. They become a minefield unless every contributor is diligent, which happens very often.
Re:We and our 838 partners use cookies on Friday May 03, 2024 @08:33AM (#40246952)
I'm confused — how does this relate to the title?
Minor nit: it'd be 99.(nine 9s)
Re:Go Enums Still Suck on Thursday March 28, 2024 @08:33AM (#39850443)
What enums?
Re:Friends don't let friends export to CSV on Tuesday March 26, 2024 @07:22AM (#39826479)
xsv makes dealing with csv miles easier: https://github.com/BurntSushi/xsv
Love the idea, but the contrast is broken when `prefers-color-scheme: light`. Can't read headings or settings text.

Only tried the live demo page — so ignore this if it's fixed. :)

Older »