Readit News logoReadit News
themk commented on Hashcards: A plain-text spaced repetition system   borretti.me/article/hashc... · Posted by u/thomascountz
smarkmt · 6 days ago
W.r.t data entry I've resorted at times to using a Google spreadsheet with autogenerated row UUIDs (it's useful for content to have a persistent ID in case you have to correct a typo or add new fields).

I also often found myself wanting to make different flashcard decks from the same basic information (for Mandarin pinyin sentence --> character recognition, characters --> English translation).

If there was a sheets like data entry interface backed by a text format it would be great.l (I rolled things with streamlit but it's always cumbersome to get started).

themk · 6 days ago
Yes, the inability to edit cards due to the content-addressing seems like a majot drawback.
themk commented on Australia begins enforcing world-first teen social media ban   reuters.com/legal/litigat... · Posted by u/chirau
wnevets · 10 days ago
The aussies are huge fans of big brother
themk · 10 days ago
I thought Meta was "the Party".
themk commented on Australia begins enforcing world-first teen social media ban   reuters.com/legal/litigat... · Posted by u/chirau
oersted · 10 days ago
Let's not go overboard. While I don't agree with this law, it's not much different from other underage laws that are commonplace: alcohol, tobacco, driving... I don't think it's an indicator of totalitarianism, it's just the same-old lawmaking philosophy updating to new developments.
themk · 10 days ago
My personal favourite analogy is gambling. The constant microdosing of dopamine to get you to hang around and spend just a little more ~money~ attention.
themk commented on Using LLMs at Oxide   rfd.shared.oxide.computer... · Posted by u/steveklabnik
mcqueenjordan · 14 days ago
As usual with Oxide's RFDs, I found myself vigorously head-nodding while reading. Somewhat rarely, I found a part that I found myself disagreeing with:

> Unlike prose, however (which really should be handed in a polished form to an LLM to maximize the LLM’s efficacy), LLMs can be quite effective writing code de novo.

Don't the same arguments against using LLMs to write one's prose also apply to code? Was this structure of the code and ideas within the engineers'? Or was it from the LLM? And so on.

Before I'm misunderstood as a LLM minimalist, I want to say that I think they're incredibly good at solving for the blank page syndrome -- just getting a starting point on the page is useful. But I think that the code you actually want to ship is so far from what LLMs write, that I think of it more as a crutch for blank page syndrome than "they're good at writing code de novo".

I'm open to being wrong and want to hear any discussion on the matter. My worry is that this is another one of the "illusion of progress" traps, similar to the one that currently fools people with the prose side of things.

themk · 14 days ago
I recently published an internal memo which covered the same point, but I included code. I feel like you still have a "voice" in code, and it provides important cues to the reviewer. I also consider review to be an important learning and collaboration moment, which becomes difficult with LLM code.
themk commented on Zig's new plan for asynchronous programs   lwn.net/SubscriberLink/10... · Posted by u/messe
AndyKelley · 17 days ago
OK I think I understand now, thank you. My takeaways:

1. Yes, Zig is doing basically the same thing as Haskell

2. No, it's not a monad in Zig because it's an imperative language.

themk · 17 days ago
It still is a monad. It's just Zig doesn't have language support for monads, so it's less ergonomic.

Just as modular addition over ints in Zig forms a group, even if Zig has no notion of groups. It's just a property of the construct.

Laziness has nothing to do with it.

What that means practically for Zig, I'm unsure.

themk commented on Zig's new plan for asynchronous programs   lwn.net/SubscriberLink/10... · Posted by u/messe
AndyKelley · 18 days ago
Well I don't think that fits at all. In Zig, an Io instance is an interface, passed as a parameter. You can draw some connections between what Zig is doing and what Haskell is doing but it's not a monad. It's plain old interfaces and parameters, just like Allocator.
themk · 18 days ago
Passing an interface as a parameter is a monad. (Io -> _) is an instance of Monad in Haskell.

Haskell just has syntax to make using (any) monad much nicer. In this case, it let's you elide the `Io` parameter in the syntax if you are just going to be passing the same Io to a bunch of other functions. But it still is there.

themk commented on Zig's new plan for asynchronous programs   lwn.net/SubscriberLink/10... · Posted by u/messe
AndyKelley · 18 days ago
Can you explain for those of us less familiar with Haskell (and monads in general)?
themk · 18 days ago
A Monad is a _super_ generic interface that can be implemented for a whole bunch of structures/types. When people talk about "monads", they are usually referring to a specific instance. In this case, the Reader monad is a specific instance that is roughly equivalent to functions that take an argument of a particular type and return a result of any type. That is, any function that looks like this (r -> a) where `r` is fixed to some type, and `a` can be anything.

Functions of that form can actually implement the Monad interface, and can make use of Haskells syntax support for them.

One common use-case for the reader monad pattern is to ship around an interface type (say, a struct with a bunch of functions or other data in it). So, what people are saying here is that passing around a the `Io` type as a function argument is just the "reader monad" pattern in Haskell.

And, if you hand-wave a bit, this is actually how Haskell's IO is implemented. There is a RealWorld type, which with a bit of hand waving, seems to pretty much be your `Io` type.

Now, the details of passing around that RealWorld type is hidden in Haskell behind the IO type, So, you don't see the `RealWorld` argument passed into the `putStrLn` function. Instead, the `putStrLn` function is of type `String -> IO ()`. But you can, think of `IO ()` as being equivalent to `RealWorld -> ()`, and if you substitute that in you see the `String -> RealWorld -> ()` type that is similar to how it appears you are doing it in Zig.

So, you can see that Zig's Io type is not the reader monad, but the pattern of having functions take it as an argument is.

Hopefully that helps.

---

Due to Haskell's laziness, IO isn't actually the reader monad, but actually more closely related to the state monad, but in a strict language that wouldn't be required.

themk commented on Zig's new plan for asynchronous programs   lwn.net/SubscriberLink/10... · Posted by u/messe
dan-robertson · 18 days ago
This solves a problem for library authors which is that blocking and event-based io implementations of functionality look the same but are not actually the same so users end up complaining when you do one but not the other.

It adds a problem of needing to pass the global kind of io through a program. I think this mostly isn’t a huge problem because typical good program design has io on the periphery and so you don’t tend to need to pass this io object that ‘deep’. This is not too different from the type-system effect of IO in Haskell (except that one only does evented IO IIRC). It isn’t as bad because it only affects input types (data which can be closed over, I assume) rather than output types. Eg in Haskell you need various special functions to change from [ IO a ] to IO [ a ] but in the zig model you iterate over your list in the normal way using an io value from an outer scope.

The one case where Io-colouring was annoying to me in Haskell was adding printf debugging (there is a function to cheat the type system for this). Zig may have other solutions to that, eg a global io value for blocking io in debug builds or some global logging system.

themk · 18 days ago
There is nothing special about the [IO a] -> IO [a] in Haskell. You can iterate over it using the "normal" methods of iterating just fine.

    forM ios $ \io -> io
But there are better ways to do it (e.g. sequence), but those are also not "special" to IO in any way. They are common abstractions usable by any Monad.

themk commented on $96M AUD revamp of Bom website bombs out on launch   bbc.com/news/articles/c2k... · Posted by u/sam-cop-vimes
sam-cop-vimes · 24 days ago
Not a user of this site but a lesson for all techies about changing something which is heavily in use. Don't expect people to take to it immediately and provide some way to allow people to gradually transition.

The site itself looks clean and loads fast but people are complaining that they can't easily find information they used to be able to.

Also, the price tag is eye watering!

themk · 23 days ago
The old website was much faster. And you could fit all the information you needed on a single screen. No scrolling. It was great.
themk commented on Ticker: Don't die of heart disease   myticker.com/... · Posted by u/colelyman
potato-peeler · a month ago
The value of the biomarkers are they applicable for all age range? What if someone already had a heart attack, then what should be the normal values post incident?
themk · a month ago
AFAIU, for LDL and ApoB, the real danger lies in the area under the curve. Lifetime exposure. That's not to say that lifestyle improvement can't help in other ways, but the damage caused by LDL is very difficult (impossible) to reverse.

So, if you hit the point where you already had a heart attack, you really want to prevent any further damage, but the "accumulated" risk is still there.

I think that's part of what makes LDL so tragic. You should care about it your whole life, but when you are young, you just don't.

Worse, high LDL is becoming a thing in children as well, that's an extra decade of accumulation which has historically not happened.

I don't think people should panic about these things, but I think it highlights the importance of developing good habits early, and the role parents and society has in making those habits easy for young people to adopt.

u/themk

KarmaCake day328March 11, 2020View Original