HNHacker News
TopNewBestAskShowJobs

Cannabat

420 karma · joined December 26, 2021

submissionscomments
Cannabat··on The Moose Boulder Hoax
Huh, there’s nothing detailing the search for the alleged seasonal pond in the article. Just that they hiked for a while. They didn’t even say “we didn’t find it”. I feel like a chapter was left out!

Did they go in the right season? Did they find any ponds but no boulder?

The article did little to convince me it’s a hoax, though I don’t believe it’s real either.

Cannabat··on Researchers find a rare compound, plumbonacrite, in first layer of Mona Lisa
Sometimes “remarkable” means a meme randomly caught on, or a good marketing team. There are plenty of famous things that are poor imitations of relative unknowns.
Cannabat··on Psytrance Guide
Also try Aes Dana, Scann-Tec, Solar Fields
Cannabat··on Psytrance Guide
Zero Degrees is one of the trippiest songs of all time.
Cannabat··on Sessionic: A cross-browser extension to save, manage, restore tabs and sessions
I think the question is regarding how it syncs across browsers (FF & chrome). I don't understand how this is possible for an extension, without some remote storage
Cannabat··on USB inventor explains why the connector was not designed to be reversible (2019)
You’ve been fortunate (or far more clued in to usb standards than just about everyone) if you don’t already have multiple usb c cables with different capabilities.

It’s possible for noncompliant usb c cable to fry electronics.

I don’t know of any other connector standard where the connector doesn’t clearly indicate or imply the cable’s capabilities. I’m sure they exist, but generally for consumer electronics if a cable fits, it works. Except for usb c.

Cannabat··on Running Stable Diffusion XL 1.0 in 298MB of RAM
Ip adapter is a bit different from what fooocus and midjourney do.

Ip adapter uses an image to guide denoising.

Fooocus and MJ take a prompt and expand it in a variety of ways (eg a language model or more simplistic text manipulation). The actual prompt that creates the conditioning is not what you typed in. That’s what I mean by prompt massaging

Cannabat··on Running Stable Diffusion XL 1.0 in 298MB of RAM
Fooocus does quite a bit of prompt massaging for you - there are models that take a few words and turn them into “prompt engineer” level prompts. Makes a huge difference.
Cannabat··on DJI Mini 4 Pro
The mini is undetectable over 100ft or so. other drones will interrupt the peace, but this one is far less likely to.
Cannabat··on Show HN: ElectricSQL, Postgres to SQLite active-active sync for local-first apps
Product looks excellent, and your website is gorgeous. Kudos!

It looks like the "Switch from X" buttons don't go anywhere.

Cannabat··on MaplePad – RP2040 Dreamcast controller, VMU, and Purupuru (rumble pack) emulator
Very nice of you to offer, and rather tempting - though I have no time to play.

How is it modded? I recall that certain models, identified by some number on the bottom of the console, allowed burned discs to be played. What extra can you do with a modded system?

Cannabat··on I built a plane spotter for my son in minutes
> Instead the model decides to make stuff up and pretend that it knows. That's vastly worse.

Does the model know it doesn’t know though? Does “know” even make sense as a concept here? I don’t know if it can really introspect like that, but of course it would be so much better if it could can have some sort of confidence score with each answer.

Cannabat··on I built a plane spotter for my son in minutes
It's seriously empowering. I've found it to provide excellent broad strokes for topics where there are well-established best practices. In these cases, where the training data would have had numerous data that all said the same thing, you can be pretty darn sure it is not leading you astray.
Cannabat··on A Gentle Introduction to Liquid Types
`schema.parse()` is equivalent to pydantic `MyModel.parse_obj()` and throws if invalid.

`const result = schema.safeParse(val)` does not throw, and if `!result.success`, `result.error` contains a `ZodError` object with all the details. It's common to further transform this error object, perhaps to make it more human-readable or suitable for an API response.

Typically I find myself using `safeParse` far more than `parse`.

Cannabat··on Glove80 Ergonomic Keyboard
I'm not sure if taking regular breaks and doing exercises can fully mitigate the RSI and discomfort/pain that drives many to use ergonomic keyboards and input devices.

Personally, my wrists start to hurt after only an hour or two of use of a "normal" keyboard and mouse. It doesn't matter if I've spent the previous 3 months offline doing yoga (getting very thorough full-body movement) or totally absorbed in some computer-y project - "normal" input devices hurt! My shoulders and back are more tolerant, but eventually they start to ache too.

It's likely I didn't take care of myself properly earlier in life, but using a split keyboard and tilted thumb-operated trackball mean I can continue coding without nerve pain.

To be clear, the goal is not exactly to move less - it's to keep the wrists and shoulders in a neutral, less-stressful position.

Cannabat··on Things I wish I knew before moving 50K lines of code to React Server Components
Most judgements I've read online of CSR vs SSR miss that distinction of website and web-based application.

Clearly if your website essentially just retrieves some data and displays it to the user, you can use SSR. It seems most frontend discussion - and even most of the frontend dev velocity - focuses on this context.

Other common advice is "you don't need global state mgmt - use component state and a query library with good caching". Nigh impossible to retain performance and high interactivity without redux/mobx/etc.

It's very empowering to be able to create sophisticated web apps that run on any device with a web browser! SPA is a very valuable pattern.

Cannabat··on tRPC – Build and consume typesafe APIs without schemas or code generation
Gotcha. I’m not sure what options are out there. Haven’t needed to do any codegen to python - only from python.

For all its issues, the JS world typically provides an excellent developer experience and takes types far more seriously than python.

Hope you find something that helps, and if you do I’d love to hear about it.

Cannabat··on tRPC – Build and consume typesafe APIs without schemas or code generation
Like generating pydantic models or dataclasses for an OpenAPI schema? I haven't needed to go in that direction myself, but this[0] looks promising!

Apologies if I've misunderstood your comment

https://koxudaxi.github.io/datamodel-code-generator/

Cannabat··on tRPC – Build and consume typesafe APIs without schemas or code generation
Sure, if you have TS in your backend. There are OpenAPI to zod generators that can help get you started, even if they don’t give you perfect zod schemas out the gate.
Cannabat··on tRPC – Build and consume typesafe APIs without schemas or code generation
Another great library to generate TS types from OpenAPI is https://github.com/drwpow/openapi-typescript . It provides the types as single objects you access via indexing, which is pretty nice. There's a partner library to generate a typed fetch client.
Cannabat··on tRPC – Build and consume typesafe APIs without schemas or code generation
TS is a pain with JSON Schema or OpenAPI because it doesn't directly support things like integer or precision. TS does not easily support things like `"exclusiveMinimum": 5`, `"type": "integer"` or patterned (regex) fields.

So if you want to convert your TS interfaces to JSON Schema, you may need to provide additional constraints via JSDoc and use a generator that understands those annotations. But your TS interfaces cannot express those constraints directly.

There are a number other related complications surrounding these more expressive schema definitions - like building types from them and interacting with them at runtime.

Cannabat··on Arc Browser 1.0
You can use a network capture util and will find that there is no telemetry. There’s an update check but you can disable it.

Don’t think it’s much different to use a closed source application than it is to use an open source app that somebody else compiled and put into your systems package repository.

Orion and Kagi (subscription search engine) are both great products, been using them for over a year, though I main FF.

Cannabat··on An untold story of the Tunisian startup ecosystem
Can you elaborate or point to some writing on this topic? Who is prejudiced against North Africans and why?
Cannabat··on Tabby: A terminal for a more modern age
Warp terminal is very fast and very feature-rich (and, last I tried about 6 months ago, still very new with some rough edges)
Cannabat··on Can Dell’s 6K monitor beat their 8K monitor?
I have a LG 38” ultrawide which I would love, except it also has this problem with specific hues. It took me a while to figure out that it was related to certain colors.

I found that if change the color profile I can mitigate the issue, but then it doesn’t look quite as nice.

On the LG, not only is there flickering but a transient burn-in which still appears when the TB cable is disconnected! It fades after a few hours.

Many owners have the same issue with their M1 devices so I assume it’s not something that is fixable.

Cannabat··on Reddit makes r/programming private after top post exposed chatgpt astroturfing
It appears someone is using a LLM to make pro-Reddit (ie anti-subreddit-blackout) posts on r/programming. The accounts are all under 30 days old and the posts have that classic milquetoast ChatGPT vibe to them - utterly bland, inoffensive, “safe” posts. If you’ve used ChatGPT you’ll immediately recognize the style.
Cannabat··on Reddit Strike Has Started
It’s true, though - over the past few years especially. Substantial rise in spam, paid accounts trying to sell you on some product or service, direct message solicitation, bots with political motivations… it really has gone downhill recently.
Cannabat··on Ask HN: I have 176 logins/accounts. How many do you have?
I guess that's kinda fine, but there are at least two reasons to not do this:

- Access to any of your accounts could make impersonation easier. You might not be the one who suffers from whatever they do. Or if they can assemble enough PII, you might unexpectedly have a line of credit taken out on your name.

- Many websites use some form of federated login, or a crossover kinda situation where you have a username/password login that is linked to eg a Google account. Access to the username/password account could open you up to an attack on the juicy targets.

Personally, I'd rather none of my accounts are easily compromised, but that's a pipe dream - it's not up to us to secure the services we use. So best thing to do is just use a good password.

It's easy these days to use a good password, though I acknowledge still tedious/impossible to update all of your services.

Cannabat··on Compromised PyTorch-nightly dependency chain between December 25th – December 30
In this case, the malicious dependency wasn't actually a dependency, so removing it from pypi caused no issues with pytorch. Not all projects are so lucky.

I recently wanted to contribute a feature I needed to an NPM package. The package is fairly popular (400k+ downloads per week) but is unmaintained with the last release about 3 years ago. There are no practical alternatives to this package. So my only option was to fork it.

Unfortunately, one of its dependencies was found to be malware between that last release date and now. That dependency was nuked and no longer is available (not that you would install it anyways), so neither my fork nor the project can be built. The dependency tree is, of course, very complicated and it would take a lot of work to figure out a replacement for that dependency and integrate it.

I ended up directly patching the last release's compiled bundle to do what I needed to do. In this case, this very useful (but unmaintained) package is now more or less dead and further development work will be very difficult, its source code a probably useless relic.

Cannabat··on Report on an Unidentified Space Station (1982)
Reminds me of House of Leaves by Mark Z. Danielewski. Not for everyone - very polarizing book. Wonder if he was influenced by this short story.
← PreviousPage 2 of 3Next →