HackerTrans
TopNewTrendsCommentsPastAskShowJobs

hsn915

3,092 karmajoined há 5 anos
https://hasen.substack.com/

twitter: hasen_judi

Submissions

Show HN: Shirei, cross-platform GUI framework in native Go

github.com
79 points·by hsn915·há 12 horas·49 comments

Templated Static Content

judi.systems
1 points·by hsn915·há 8 meses·0 comments

Implementing virtual list view with variable row heights

judi.systems
3 points·by hsn915·há 8 meses·0 comments

Show HN: Desktop app to self-host static sites on a VPS without sysadmin skills

judi.systems
1 points·by hsn915·há 10 meses·0 comments

I like Odin

hasenjudy.wordpress.com
137 points·by hsn915·há 4 anos·204 comments

comments

hsn915
·há 1 hora·discuss
Most open source projects are abandoned because the author never finds enough time to work on it or can't muster the focus and attention needed.

It is not true that there is "lack" of human investment in the creation of this. If anything, I spent the last two weeks glued to the screen most of the time, to a degree I have never experienced before, building out all the different areas that lead to this release.

I will not mention the monetary investment because it's not the type that matters here.

Attention, which is arguably the most scarce form of investment, was invested in ample amounts.
hsn915
·há 3 horas·discuss
Does "immediate mode" mean the UI refreshes at a constant 60fps rate like a video game, redrawing everything all the time?

No.

It means that you build the UI by describing what it should look like now, based on the data / state you own, without referencing any existing "widget" object or trying to manipulate it.

Scale is not about the number of buttons, but the structure of the data.

You have a list of objects, within each objects you have several fields, some of them lists, some of them maps. within some of those sub-items you have other lists and maps, nested arbitrarily.

This would be hell to manage for a retained mode UI. You have to mirror the application data into a widget tree and keep all the elements in sync, all the way down to the arbitrary depths of it.

You'd be writing thousands of lines of code that do nothing but keep your data in sync with widget states. You'd have many one off bugs where one sub field fails to sync in some scenarios. Your only options is to be more defensive: more events, more full-resync. As a result, the codebase is complicated and the application feels slow/heavy, because updating widget states is costly.

In immediate mode, none of that matters. You don't have a parallel widget tree.
hsn915
·há 4 horas·discuss
That's irrelevant though? I'm not asking anyone to contribute or form a community with me as the leader.

I'm putting out something in the hopes of it being useful for others.
hsn915
·há 5 horas·discuss
I have several projects in the same git repository which also forms a workspace in Go. Many of the projects in that repo are not public.
hsn915
·há 5 horas·discuss
Shirei is open source, not open contribution.
hsn915
·há 5 horas·discuss
You need to have some fonts installed. I think for some reason a bare wine setup either has none, or has fonts that Shirei cannot recognize.
hsn915
·há 5 horas·discuss
If desktop only is so useless, why are so many people create TUI apps?
hsn915
·há 5 horas·discuss
Shirei does not use GPU for rendering. It's fully software rendered.

> ebitengine

I have considered using it as a backend, but the blocker for me was how it handles resizing: the window content will stretch while it's being resized.
hsn915
·há 12 horas·discuss
This is a publish-only mirror repo.

The commit history is the publish history, not the work history.
hsn915
·há 12 horas·discuss
It's the only thing that can scale to complicated UI
hsn915
·há 10 dias·discuss
I keep a TODO file where I just write my ideas in free text, and every once in a while I tell claude "I updated the TODO file".

This is basically like queueing up prompt.

I wish Claude Code had a thing like that builtin. Like a "user ideas scratchpad".
hsn915
·há 2 meses·discuss
The TUI version of ClaudeCode is not even that good compared even to the VSCode plugin.
hsn915
·há 4 meses·discuss
You have to stop thinking about it as a computer and think about it as a human.

If, in the context of cooperating together, you say "should I go ahead?" and they just say "no" with nothing else, most people would not interpret that as "don't go ahead". They would interpret that as an unusual break in the rhythm of work.

If you wanted them to not do it, you would say something more like "no no, wait, don't do it yet, I want to do this other thing first".

A plain "no" is not one of the expected answers, so when you encounter it, you're more likely to try to read between the lines rather than take it at face value. It might read more like sarcasm.

Now, if you encountered an LLM that did not understand sarcasm, would you see that as a bug or a feature?
hsn915
·há 6 meses·discuss
My criticism is of the basic architecture, not usability or fitness for a particular purpose.

If a distributed file system is useful, then a properly architectured one is 100x more useful and more performant.
hsn915
·há 6 meses·discuss
This is upside down.

We need a kernel native distributed file system so that we can build distributed storage/databases on top of it.

This is like building an operating system on top of a browser.
hsn915
·há 6 meses·discuss
I had a similar feeling expressed in the title regarding ChatGPT 5.2

I haven't tried it for coding. I'm just talking about regular chatting.

It's doing something different from prior models. It seems like it can maintain structural coherence even for very long chats.

Where as prior models felt like System 1 thinking, ChatGPT5.2 appears like it exhibits System 2 thinking.
hsn915
·há 6 meses·discuss
For some, having an instagram profile with many followers is the accomplishment.
hsn915
·há 7 meses·discuss
Wouldn't distributed systems benefit from using UDP instead of TCP?
hsn915
·há 7 meses·discuss
In Japan, Wantedly is more popular.
hsn915
·há 7 meses·discuss
Non-native English speaker here.

I would not understand the last two sentences. Sidle? Tromp? I don't think I've seen these words enough times for them to register in my mind.

"Strode", I would probably understand after a few seconds of squeezing my brain. I mean, I sort of know "stride", but not as an action someone would take. Rather as the number of bytes a row of pixels takes in a pixel buffer. I would have to extrapolate what the original "daily English" equivalent must have been.