Skip Navigation

InitialsDiceBearhttps://github.com/dicebear/dicebearhttps://creativecommons.org/publicdomain/zero/1.0/„Initials” (https://github.com/dicebear/dicebear) by „DiceBear”, licensed under „CC0 1.0” (https://creativecommons.org/publicdomain/zero/1.0/)T
Posts
1
Comments
119
Joined
5 mo. ago

  • MDN has a really good tutorial: https://developer.mozilla.org/en-US/docs/Learn_web_development/Core

    I also want to throw in that a "static site generator" would probably be up your alley.It is additional software, but it just gives you HTML+CSS in the end, so you can still upload to NeoCities or the like. It would effectively replace PHP for your use-case.

    Knowing some HTML and CSS, and the rest of what you learned in that tutorial, is still helpful, as you may want to customize your template, but for the most part you can just write your blog posts in Markdown and it'll generate the HTML with navigation links for you.

    Of course, a static site generator is still an additional layer of complexity. For learning how HTML and such work, it's definitely valid to plug everything together yourself. 🙂

  • Humanity started growing massively when the Industrial Revolution hit:

    Source: https://ourworldindata.org/population-growth-over-time

    So, that would be a factor, whether they'd still have access to technology (and whether we'd expect them to be able to maintain at least some of this technology).

  • Just to kind of confirm this:

    ls -l does not show them like hard links, but rather like soft/symbolic links.

    But when I do tail -f /path/to/file.txt on a file (to keep it open in a process) and then delete the file, I get this output in ls -l:

     
        
    3 -> '/path/to/file.txt (deleted)'
    
      

    The 3 seems to just be an incrementing number for each file opened by the process. And then, well, obviously the file isn't now called "file.txt (deleted)". That is just a name the kernel makes up when ls -l asks it what's in that directory.

    So, presumably the kernel keeps a separate copy of that file in memory until the process closes the file or is terminated. And then exposes it through this pseudo-softlink rather than making use of hardlinks.

  • I would use an enum. Booleans are bad, because they don't tell you what true means. And specifically named functions are bad, because you cannot pass them through the codebase as data (without resorting to entirely functional patterns).

    I mean, your examples are in C, which has shit enums that are just integers, so at runtime you won't know either what a 1 is without context.And I believe the compiler doesn't stop you either from passing a different enum or just an integer into a parameter with that enum as type.But at least it'll be written in the code what you hope to get passed, so...

  • Why you can't see distant stars:

    • The light fans out the further it travels, because the angles just drift further apart.
    • The higher the distance, the higher is the chance of something else getting in the way. In particular, clouds of gas or dust can dim the star without blocking it completely.

    I guess, the following isn't technically relevant here, but:

    • The space in the universe expands for unknown reasons. When light travels larger distances through this expanding space, its wavelength is stretched as well. This causes the light color to shift towards red, then infrared, then microwave radiation. We can't see the latter two anymore, so they appear dark.

    I assume, it's not relevant here, because otherwise the stars would appear red. Although, I don't know, if maybe Rayleigh Scattering counteracts that?

    But yeah, there's a similar paradox where this redshift actually becomes relevant: https://en.wikipedia.org/wiki/Olbers%27_paradox

  • Yeah? You should still make a decision. If you want it possible to watch, star and fork the repo from any of the sub-pages, then that stuff has to live in that top ribbon.

    But then you shouldn't duplicate it into the Code sub-page. I'd work with split buttons, where you can look at who starred and you can add your own star, all from the same UI element. It would not even take up more space, since they do already display the count in the top ribbon as well.

    Apparently this is how Codeberg does it (see e.g. this repo), so this might be where I have the idea from...

  • I mean, yeah, it can make sense to duplicate information. That screenshot isn't supposed to say that all of these should be deduplicated.But you really gotta be cautious with duplication, because it makes everything else harder to find. And I would absolutely argue that GitHub has crossed the line where they duplicate too much, across the board. It feels like design-by-committee.

    This is entirely anecdotal, but what really dumbfounded me while annotating that screenshot, is that I never actually read the links in that "About" section.I've seen this page probably a thousand times already, but I had no idea that there's an "Activity" link there, which actually seems like it could be useful. Nor a link to the README, to the CONTRIBUTING.md or for "Custom Properties" (whatever that is).I had no idea how to report a repo until now, even though the link is apparently always on screen.

    There's just so much info there, and it's presented like read-only info, not like navigation links, so I always just skipped over the lines that don't have numbers in them. I also genuinely never tried clicking any of these lines before...

  • I could rant a lot about the GitHub UX, so here's just the fairly obvious stuff on the repository page:

    Red arrows mean duplicated information or duplicated navigational elements.Green arrow means why the fuck do I have to tell our customers to click a random link in the middle of bumfuck nowhere, in order to download our software?

  • This week, I was talking to someone at work about a topic they know a lot more about. It was a good exchange, I learned a lot. After the meeting, in the span of like half an hour, they sent me ten essay-length LLM outputs.

    And it's just genuinely, like, what is the goal here? It's cool that they want to provide additional reading material, but clearly they did not proof-read it, so I could've just asked an LLM myself, if I deemed that helpful.

    There is also just no chance in hell that I'm reading ten essays on the topic, especially when they're as poorly written as LLM output generally is. I genuinely took a few minutes to try to skim it and I covered maybe 10% of the text, but learned hardly anything.

    I just really don't understand this mindset of "I can generate a lot of text, so I'm being helpful by sending it to you".

  • For avoiding scratches, a "laptop sleeve" might be what you want. It can only used when transporting the laptop, though.

    Normally, you just buy one for the screen size you have and that should fit well enough...

  • The section "4. What editing does to the mark" talks about that. Probably best to look at that illustration again, but basically those edits would interrupt consecutive runs of detectable text, but if a run is long enough, it can still be detected with statistical significance.

    So, it doesn't have to check the 'color' of the words from start to end uninterrupted, but rather can also detect color sequences in the middle of the text.

  • Yeah, they can't easily rotate keys, because the text can't tell you which key was used.

    They could switch to a new key e.g. every month and then just check every previous key during detection. But that would slowly increase the likelihood of false positives, so no idea if that's a good idea either.

  • Funnily enough, Firefox basically has it, with its Tracking Protection. The vast majority of ads use tracking, so get blocked by it.

  • With "refine", I would guess they're talking about refining a task, so breaking it down into smaller, more concrete/actionable tasks.

    Because that's usually meant in dev lingo, and because the other possible meaning of improving already-written code/docs is kind of already covered by "review".

  • I believe, the right term to call that, is abuse of their dominance in one market to force their way into another...

  • Well, there'd be two of these:

    And a blue fish.

    It's not a Dr. Seuss reference. 😅

  • You'd also need some way to automatically install the right package, if a dependency is missing. And you'd need to make this work seamlessly on all distros.

    As a dev, I want my users to be able to use my software with as few clicks as possible. Ideally, just one. I'll also accept two (download + run). For expert users, we can talk about 4 clicks, where they'd still unpack an archive after download.

    But anything beyond that, especially if they have to first troubleshoot what dependency is missing on their system, that's just not happening. They'll just give up and delete my program, because they don't want to invest time into getting it to run, when they don't even know yet, if it does what they want. I know, I would.

  • Have you considered just rewriting the cryptography parts in Rust and calling those from JavaScript? In the projects I've seen so far, it was always possible to move the cryptography stuff into a standalone library.And then with a WebAssembly wrapper, you could call that from JS: https://opensource.com/article/19/3/calling-rust-javascript

    Don't get me wrong, I'm a big fan of Rust. I also think the WebAssembly GUI frameworks are cool. But at this point in time, I'd say they're cool for people who don't want to write JS.If you're happy with JS, then the ecosystem of web component libraries will very likely make you more productive than you'll be with Dioxus or Leptos.

  • Programming @programming.dev

    CLI to get web links for your repo

    codeberg.org /trem/forge