HNHacker News
TopNewBestAskShowJobs

clord

1,032 karma · joined March 6, 2009

Started pliosoft.com. Used to be a c++/fortran compiler engineer for IBM.

[ my public key: https://keybase.io/clord; my proof: https://keybase.io/clord/sigs/krTEbnhXaURpsY0ID80LEGUxq4yo4VuWODHIYiqaFsA ]

submissionscomments
clord··on Parquet: An efficient, binary file format for table data
“Parquet has both a date type and the datetime type (both sensibly recorded as integers in UTC).”

What does it mean for a date to be utc? my date, but in the utc timezone? Usually when I write a date to a file, I want a naive date; since that’s the domain of the data. 2020-12-12 sales: $500. But splitting that by some other timezone seems to be introducing a mistake.

Often I want to think in local naive time too, especially for things like appointments that might change depending on dst or whatever. Converting to utc involves some scary things. Timestamps are also useful but I don’t want to transcode my data sometimes as the natural format is the most correct.

clord··on Show HN: I made an early 2000s-inspired internet forum
Loading and performance behind loading states are UI concerns, especially on a big distributed system like the modern web. Perhaps you allow native browser elements to provide that UI, perhaps customize it somehow, but a UI designer must consider how the page fills as data arrives. Do you do the ‘spinner hell’ thing? Keep it blank? FOUC? Show cache and update? These are primary UI concerns.
clord··on Making sense of TypeScript using set theory
> unknown is the set of all JS values. any is a paradoxical set that includes everything, but might also be empty.

Not really a paradox.

- `unknown` is the intersection (&) of all types, including an internal one that has no shape or characteristics. `unknown | {int: number}` should be `{int: number}`. `unknown & T` is always `unknown`, any characteristic T has will be discarded by the intersection.

- `any` is the union (|) of all types, including that internal one that can be anything, and yes, `unknown` too. `(any & {int: number})` should be `{int: number}`. also, `const x: any = 5 as unknown`. Union with `any` should always produce `any`.

clord··on Making sense of TypeScript using set theory
Having set types like this and refining them smaller is something I wish Haskell would learn from Typescript, especially the automatic inference side. I wonder if it would help with linear types? Are there any proposals? I know there are type level naturals in the type system, but this is more like wanting to deconstruct existing types like Int or String into subset types.

e.g.,

foo :: Int -> 3::Int | 4::Int

foo 4 = 4

foo _ = 3

bar :: 3::Int | 4::Int -> Bool

bar 4 = True

bar 3 = False

-- (bar 12) is a compiler error, and no need to handle other patterns

baz :: 3::Int | 2::Int -> Bool

bar 3 = True

bar x = False -- Type of x is 2::Int

clord··on Deere to allow farmers to repair their own equipment
Even if they only did this with the maintenance schedule costs, with breakouts for major possible maintenance incidents, in present dollars. That would be extremely useful.

Companies like consumer reports should do this sort of thing.

clord··on Ideas for a JavaScript Stricter Mode
In addition to making await the default, one could make async the way to split off work:

  async foo() {
   let y = awaited(); // as in article
   let p = async notAwaited();
  // do stuff
   let z = await p;
  }
clord··on Lex Fridman's Reading Plan in Numbers
I can read some of those books in less than a week, so gaining ‘budget’ for the others. I don’t get the outrage over putting some more challenging books on the list.
clord··on Function keys productivity trick
Would be nice to have a usb keypad and perhaps a little oled screen in each keycap to implement this… my function keys are pretty overloaded with stuff now.
clord··on Austral: A systems language with linear types and capabilities
Any other mechanism for fixing the ephemeral name problem? I don’t like having to invent meaningless names.
clord··on Austral: A systems language with linear types and capabilities
I like that in rust one can reuse variable names, since they are dead anyway. Makes sense to ‘update’ the old name with the new value, sort of like a swap-and-kill. Does austral have this? Seems like no reason not to.
clord··on Goodbye to the C++ Implementation of Zig
Certainly Haskell is an exception; it has a distinct bimodal distribution, if not more.
clord··on Mona Sans and Hubot Sans
Are they serifs? On serif fonts the bars themselves get serifs. They are more like the bar on capital G or the cross bar on capital A.
clord··on Tailwind CSS v3.2: revisiting my “feature creep” warning
I want tailwind as a DSL or IDE feature to write CSS. That’s mainly what I like about it. I don’t mind css but it’s repetitive to style a bunch of nodes.
clord··on Does cashless society discriminate against the poor and elderly? (2019)
I'm running into this. A family member is in the hospital, but she took care of all the bills and whatnot. Her husband is having a very hard time figuring out how to pay bills, etc. I've been helping him out but the situation is teaching me how hard it is to do things for someone outside of technology these days.
clord··on Apple is quietly pushing a TV ad product with media agencies
Perhaps not. my kids are ad-free (8 and 11), and when we visit family with a tv, at first they laugh at the ads and wonder why people fall for them, or what the ad is even for. They just turn the tv off and do something else when the ad interrupts what they were watching at a critical moment (dad, get this show later ok? I can't stand seeing that ad again).

Also, many ads now are like insider jokes, trying to poke a certain market.

I notice people who are used to it can just stare at the tv during the ads, even during a conversation. They go to the bathroom at the recap part of the show. I think TV ads are crafted to create a partial attention.

clord··on LiteFS
I can imagine a database which tries to solve both of these domains.

A centralized database handles consistency, and vends data closures to distributed applications for in-process querying (and those closures reconcile via something like CRDT back to the core db).

Does this exist?

clord··on LiteFS
It's an application design choice. It's perfectly reasonable to consider those two options when designing a system. The constraints of the system determine which is better for the application.

I'd pick a centralized network-reachable database with a strong relational schema for write-heavy applications, and a lighter in-process system for something that is mostly reads and where latency matters. It's not a false dichotomy — but more like a continuum that certainly includes both extremes on it.

clord··on React I love you, but you're bringing me down
I find hooks make it easier to break apart components. With a class component, there are tons of hidden dependencies on those huge components. Maintenance programmers add them relentlessly. When it comes time to refactor, it's often easiest to just translate to hooks and then start breaking things apart. Why? hooks are small and self contained by nature, and they compose nicely, so you can start with a ball of hair and use regular refactoring tools (extract to function, move to file) to decompose them.
clord··on The Merge
Say I have a few GPUs churning but my payout date is late 2022. Should I just give up now?
clord··on App Store doesn't accept “too simple” apps
While I agree that web apps would be a better platform for the majority of this information… simplicity is not the way to express it.

I’d love to see some memes of classic mac apps and this email stuck to it.

clord··on Declining quality of consumer-grade products – 2009 fridge compressor autopsy
I call this inflation by other means. Constant quality items are increasing in price.
clord··on Strange new phase of matter acts like it has two time dimensions
Does this then count as a sort of "holographic time"? Encoding two dimensions on a single stream of time.
clord··on How I Experience the Web Today
I’ll go one further. In addition to not watching, My kids have never in their life watched regular tv except visiting someone’s house who does. Those few times they just want to turn it off because it’s “broken and spamy.” “Why does the spam get louder.” “Do they think we care about [thing in ad]” etc.

I was worried they would be more susceptible to ads. Ut it’s the opposite.

clord··on The Dhall Configuration Language
Meh, I think you're pointing out why doing this with a variable is better. In other words that mistake is the entire point of the example. Perhaps the definitions tab could make it more clear what the mistake was.
clord··on Inverse Mengele – A Thought Experiment
Isn’t this just a version of Roko’s basilisk?

https://rationalwiki.org/wiki/Roko%27s_basilisk

Edit: I mean it’s similar in that at some point you’re punishable for knowing and still preventing the AI instead of not bringing it about. I feel about the same with both scenarios.

clord··on They Think It's Murder
I take the liberal position that pro choice fades into a right to life, especially around viability but the fade is still ongoing even then (takes more and more extreme circumstances to abort an embryo that is less dependent)

That said, the late-term and even post-term abortions that are happening now mean that if I am forced to choose between complete restriction and late/post, I will support whatever laws restrict late/post even if it’s overly restrictive. It is insane that these things are being conflated under the same term and that is shifting liberals such as myself farther from leftists just because the extreme position is so abhorrent.

Elon’s meme with the left running further left and then calling everyone else bigots is relevant here.

clord··on Writing one sentence per line
This is my primary objection to using 80 columns everywhere. Markdown specifically is a painful place to require it, but also latex and HTML. For source code, 80-col works out ok most of the time since "sentences" are relatively short, but even there I prefer to use more semantic line breaks when the style guide or formatting tool does not omit them.
clord··on 460M Indian Internet Users Are Now on IPv6
Also in this line of thinking: hosts can be assigned an entire subnet, and applications can get individual /128s. This way, a single host can provide a bunch of independent services, which can be broken out into real machines as the system grows without renumbering.
clord··on Mechanical Watch
> when we pull the crown all the way out to enter the time setting mode, that stop lever blocks the balance wheel, which stops the watch in an action known as hacking

whoa, is this the origin of the word "hacking" in the "throw something into the wheels to make it work" sense? very interesting.

clord··on I stopped working on black hole information loss
Doesn’t the black hole just delay the information, not destroy it? Things that “fall in” from our perspective just fade down into a static low frequency frozen image on the horizon, and the remaining trip to the horizon as seen from the outside takes infinite time.

The falling perspective likewise loses timely access to information about the entire universe as the singularity fills their view.

I don’t see a paradox. Just the strange behavior of time at the limit.

← PreviousPage 2 of 9Next →