MurphyA/hacker-news huggingface dataset:
by ytjohn | 2025-04-13 13:15:07+00:00
I did this with nreal air glasses (now xreal air), specifically for coding. Most uses cases for these type of glasses is around media consumption, so I was taking a bit of a leap when doing it for coding/heavy text usage.

There are two modes. One is fixed so that the virtual monitor stays in one spot on the lenses. The single virtual monitor stays directly in front of you. The other is floating, which basically keeps the virtual monitor in one spot and you can turn your head to look away. This mode also lets you set up 3 virtual monitors side by side so you can turn to look at them. It uses head tracking to basically shift the image in the opposite direction you turn your head.

In both cases, the screen does move, and this is super relevant when looking at text and down at status bars. The fixed one is better because it moves relative to your head, but both cases have some amount of jitter. I found the best case coding scenario is the fixed monitor (no head tracking), and being in a seat wth head rest and you can press your head back into it. This minimizes your head movement, which minimizes how much the text moves about. The downside is that we're used to looking up and down at the screen, so you want to set the monitor at a proper distance so you can look up and down with just your eyes. You really want to shrink the monitor to a size close to that of a laptop.

I ultimately ended up not liking the experience very much. No matter what, you're gonna end up with some amount of text movement. There is also a bit of light saturation bleed through (old CRT style). Putting the blackout blinders on helps a lot, but the projected nature remains an issue. Essentially only usable long term in a recliner or a car seat with headrest. Unlike the author, I am using a work provided laptop and I have that with me anyways. There was coolness to leaving the laptop in my backpack and just bringing the glasses up via wire - but to actually do anything, I need a keyboard. Which means taking along a Lenovo's thinkpoint trackpad keyboard (really great backpack keyboard); or pulling out the laptop.

The newer ones, like Xreal One from the article might be a better experience. A coworker had the air 2 pros and used them for travel. He said he didn't really notice the things I did, so maybe it was a improved experience even with that version. But he mostly worked in office documents and only occasional terminal work. When traveling and using the glasses, it was almost all "office docs", and only for short periods of time. For me - I am going to wait and be a slow adopter to move to a new version.
by vindarel | 2025-04-13 13:15:27+00:00
> I will check out your courses to see if I can learn something from you.

Thanks. Don't hesitate to reach out and give feedback. If you're into web, you might find my newer (opinionated) resource helpful: https://web-apps-in-lisp.github.io/

> Listen, I like Lisp. But Lisp has this weird effect where people, I think in an effort to boost the community, want to present every tool as a viable answer to their problems, no matter how unfinished or difficult to use.

I see. On social media comments, that's kinda true: I'm so used to hear "there is no CL editor besides Emacs" (which is literally plain false and has been for years, even if you exclude VSCode), and other timeless FUD. Articles or pages on community resources (Cookbook) should be better measured.

> listing every editor under the sun.

there's an Eclipse plugin (simple), a Geany one (simple), a Sublime one (using Slynk, can be decent?), Allegro (proprietary, tried the web version without color highlighting, surprising), Portacle and plain-common-lisp are easy to install Emacs + CL + Quicklisp bundles…

some would add CLOG as a CL editor.

BTW the Intellij plugin is also based on Slime. Not a great development activity though. But a revolution for the Lisp world if you think about it. Enough to make me want mention it twice or thrice on HN.

> tried them extensively

emphasis on "extensively", so no. SLIMA for Atom/Pulsar was decent.

> ECL… slower…

true and for this I've been measured, but looking at how vend is doing would be very interesting, as it ships a very small binary, based on libecl.
by chuckadams | 2025-04-13 13:15:33+00:00
I suppose Java didn't offer too many alternatives to checking the OS version the standard way, but I really have a hard time imagining MS bending over backwards to support that approach on that platform. There wasn't even a need to check for the "windows 9", the code was already checking for a Windows platform and would have worked the same without it. Avoiding confusion in the minds of the end users is still the most plausible explanation to me.
by ksec | 2025-04-13 13:16:01+00:00
Why is US ATSC 3.0 so bad? It is nearly a decade since it was South Korea have it deployed and operational. The standard itself is no longer "next gen". Brazil's TV 3.0, also uses ATSC 3.0 is so much better in every aspect.

Even if someone mandate it as requirement for TV sold next year all the tech inside are at least 10 years old ( HEVC ? ) . Not to mention the roll out time. Do Americans only watch Cables and Netflix? And not Free to Air TV? Which is what I belief what most of the worst still do to a larger extend other than Internet streaming.

They might as well look into the standards before putting a mandate into it.
by codingdave | 2025-04-13 13:17:23+00:00
If it is something I need to resolve for my current work, a comment: // TODO... And then I search for TODOs before pushing any code to the team.

If it is something to work on or research myself, but not part of the current work, I have a running TODO list in its own text file.

If it is something that anyone on the team could work on, I put notes or a task in whatever tracking system my team uses.
by Neywiny | 2025-04-13 13:18:21+00:00
I am. But it's the same for everything. I don't live in a place I can install a car charger. It would be that overhead increase for every time I charged. It would actually be worse if it's not a once in a lifetime (so far) road trip because at least those times I wanted to be stopped for a bit. I'd imagine the times I'm rushing to work and have to stop for gas would get a lot worse with a long charge time.
by PaulHoule | 2025-04-13 13:19:19+00:00
If I had to choose either a premium domain name or the full court press of SEO and SMO I'd pick the later. Consider the case of steam.com

https://www.reddit.com/r/Steam/comments/73fshf/could_valve_b...

Steam has been at "steampowered.com" which is a 2nd rate domain name in comparison since the beginning. I'm sure they'd like to have steam.com but they've connected well with customers and game publishers without it -- they've done all the other work it takes to make their service a household name.
by jcelerier | 2025-04-13 13:19:38+00:00
I wouldn't trust anyone saying that a Roku "runs great" in any fashion. This is the slowest piece of sh* hardware I ever had the displeasure to use, the waiting times when switching apps are insane. Typing was a dreaded galore, I would plug my laptop over hdmi whenever I could instead. Every interaction in such a device should always be 100% less-than-a-frame instantaneous.
by nkrisc | 2025-04-13 13:21:14+00:00
What's interesting is nearly all words in language are on an irreversible trajectory towards abstract meaninglessness. Take your own use of the word "project" for example. Long ago, it meant "to throw or thrust" an object. Of course, today its meaning has expanded so far beyond that original meaning. That is what is happening to the word "beautiful", but the only difference is that it's happening during your lifetime, instead of long before it. You probably didn't even think about your "misuse" of the word "project" because the truth is it no longer means what it used to mean.

Perhaps 500 years from now "beautiful" (or whatever it has morphed into) will simply have a meaning similar to "pleasant".
by regularfry | 2025-04-13 13:22:21+00:00
You can do this! The XReal Airs will take a signal certainly from Samsung smartphones and a few others. I'm expecting wider compatibility from the One line but we'll see how that shakes out.

The fly in the ointment is battery life. Given only a single USB-C port on the phone and wanting to avoid having to find a hub with Display Port going one way and power the other, the glasses have to get powered from the phone itself.

Also worth pointing out that XReal themselves make a phonelike device for exactly this use case. No idea how good it is though.
by franticgecko3 | 2025-04-13 13:22:56+00:00
I'd like to refute the 'channels are slow' part of this article.

If you run a microbenchmark which seems like what has been done, then channels look slow.

If you try the contention with thousands of goroutines on a high core count machine, there is a significant inflection point where channels start outperforming sync.Mutex

The reason is that sync.Mutex, if left to wait long enough will enter a slow code path and if memory serves, will call out to a kernel futex. The channel will not do this because the mutex that a channel is built with is exists in the go runtime - that's the special sauce the author is complaining doesn't exist but didn't try hard enough to seek it out.

Anecdotally, we have ~2m lines of Go and use channels extensively in a message passing style. We do not use channels to increment a shared number, because that's ridiculous and the author is disingenuous in their contrived example. No serious Go shop is using a channel for that.
by brookst | 2025-04-13 13:23:00+00:00
FOLLOWERS: Hail Messiah!

BRIAN: I'm not the Messiah! Will you please listen? I am not the Messiah, do you understand?! Honestly!

GIRL: Only the true Messiah denies His divinity.

BRIAN: What?! Well, what sort of chance does that give me? All right! I am the Messiah!

FOLLOWERS: He is! He is the Messiah!

s/messiah/LLM/ig
by crazygringo | 2025-04-13 13:23:57+00:00
That's what I thought too. And WordStar and WordPerfect predated this character set by a couple of years, and then MultiMate and Word after.

But googling screenshots of all of them, I can't find any use of this character in their rulers. It's all dots, numbers, and bracket symbols.

So I think the end of the article is right -- it's a delta triangle that, for various reasons, got corrupted into that shape:

> If even the actual Greek uppercase delta is, quite unmistakenly, rendered as a house, then the theory that DEL is just a badly formed uppercase Greek delta character with the bottom corners cut off (due to a lack of horizontal pixels) starts to seem more and more convincing.
by RadiozRadioz | 2025-04-13 13:24:04+00:00
How do they get help with those services currently? At present they operate during the same hours those people are working in, shifting the hours makes no difference to them. So this plan changes nothing for them, but is beneficial for everyone else. I welcome suggestions on how to improve it for cusomer support reps too.

I've worked in a "first line of customer support" role, while simultaneously being a customer. Whenever I needed help with something, with my end-user hat on, I knew who to ask internally to get what I needed.
by beAbU | 2025-04-13 13:25:11+00:00
Reddit is incredibly echo-chamber-y for me, the voting and karma system optimizes for the wrong type of content I feel. I've tried to engage with a few niche-interest subreddits (homebrewing, electronics, musical instruments) over the years and all of them left me generally dissapointed.

My pet theory is that someone who claims reddit is a great place for niche hobbies were never part of an old-school forum with truly passionate and engaging members.

The last 2-3 years this issue just became worse and worse.

Reddit is fantastic for memes though. There are some hilarious subreddits out there. But I rarely engage, just consume.
by lsaferite | 2025-04-13 13:25:46+00:00
Did you actually mention what BPS actually stands for in the article? I read the whole thing and don't recall reading that. Yes, I'm capable of searching and finding the information myself, but in an article about something something esoteric like this, explaining the acronym would be useful.

Edit: Broadcast Positioning System for anyone that didn't figure it out.
by nanis | 2025-04-13 13:25:48+00:00
It is your twist and unjustifiable generalization of the author's words about the author himself:

> "aging is a synonym of cognitive decline"

compared to:

> As I near 60, I’ve come to realize I simply don’t have the same mental sharpness or stamina I used to.

The author did not say anything about anyone else.

Synoym: https://www.bennetyee.org/http_webster.cgi?isindex=synonym&m...
by russfink | 2025-04-13 13:25:54+00:00
I can sympathize, being approximately that age myself. I find myself struggling with simple shell one-liners, going to the AI as a crutch, suddenly remembering “obviously, yes, this is the way” and then getting frustrated at myself thinking “30 years ago, I would have had this whole thing done by now.”

Is my angst misplaced? Maybe. Does it affect everyone my age? Of course not. Would my 20 something self have done any better? Probably not.

But the feels are real.
by Const-me | 2025-04-13 13:26:32+00:00
> This is where sharing the CPU and GPU side struct declaration is helpful

Indeed, but sharing code between CPU and shaders is not the only way to solve the problem. I wrote a simple design-time tool which loads compiled shaders with shader reflection API, and generates a source file with C++ header (or for other projects C# structures) with these constant buffers. At least with D3D11, compiled shaders have sufficient type and memory layout info to generate these structures, matching memory layout by generating padding fields when necessary.

> not sure how about d3d land

Pretty sure D3D11 doesn’t have an equivalent of that Vulkan extension. Not sure about D3D12 though, only used the 12 briefly.

> I've been using custom vertex fetch with buffer device address in my projects

In my projects, I sometimes use a lot of non-trivial input layout features. Sometimes I need multiple vertex buffers, e.g. to generate normals on GPU with a compute shader. Sometimes I need instancing. Often I need FP16 or SNORM/UNORM vertex attributes, like RG16_UNORM for octahedron-encoded normals.
by airbreather | 2025-04-13 13:28:13+00:00
I went down to the local hardware store and bought a laminted bamboo broomstick.

Less than an hour shaping with a plane and a knife used as a scraper I had a pretty good longbow.

Seemed that laminated bamboo is fairly forgiving, and capable of some serious deflection making a powerful bow.

Next, a crossbow, though I am wary of that much stored energy with a trivial trigger.
by ablob | 2025-04-13 13:28:16+00:00
I was answering with the purposes of flight-taxis in mind. I doubt that they will fly in high altitude and deem it quite likely that they might want to pass uncontrolled airspace at some point. And if you're flying in uncontrolled airspace you just can't count on the presence of it. In fact, missing transponders are an occasional source of accidents in these spaces. There are lots of gliding enthusiasts that aren't equipped.

P.S.: Commercial planes (esp. big ones) should have hardly any contact points with flying taxis.
by sebselassie | 2025-04-13 13:28:18+00:00
telli.com | hiring founding engineers | Berlin (Germany) - on-site (no remote) | hi.telli.com/eng

we’re looking for an ambitious founding engineer with high agency!

- work closely with our customers, understand their problems, and come up with killer product features

- build scalable backend infrastructure to handle thousands of AI phone calls a day

- experiment with AI technologies to build best-in-class voice agents for our customers

- own high stakes projects end-to-end

more here => hi.telli.com/eng
by ses1984 | 2025-04-13 13:28:40+00:00
I made an account to sell a cheap guitar. I listed it for $100 and used all my own original pictures.

They said my listing was suspicious and needed to verify my identity, which meant sending them a picture of me holding my drivers license next to my face.

I had a lot of other stuff to sell, so I obliged.

They said that wasn’t enough and they required another photo, this time holding my passport by my head.

I thought this was pretty crazy, but also, I had a lot of stuff to sell, and privacy is pretty much already dead so why not?

They said they could not verify my identity.

The end.
by ndsipa_pomu | 2025-04-13 13:29:09+00:00
My memory for names is abysmal if I just hear it, but if I see a name written down, then I can remember it as well as most people. It's terrible if I'm introduced to people as their name goes into my ear and I almost instantly forget it, even if it's repeated. Once I see it, though, I'm usually very good.

I had a similar issue with learning French at school - we had a teacher that would just speak the language and get us to repeat it. That was just terrible for me as I had no idea what was going on as I had difficulty learning it despite being very academically gifted. After about 6 months or so, the teacher started using textbooks too and once I could read the words it all became so much easier for me as I could visualise how to pronounce the words etc.
by pwm | 2025-04-13 13:30:10+00:00
I would love to read more about all this, especially how overlays came from "object-oriented" programming. To me, the interesting part is their self-referential nature, for which lazy eval is indeed a great fit!

For anyone interested, this is how I'd illustrate Nix's overlays in Haskell (I know I know, I'm using one obscure lang to explain another...):

data Attr a = Leaf a | Node (AttrSet a) deriving stock (Show, Functor) newtype AttrSet a = AttrSet (HashMap Text (Attr a)) deriving stock (Show, Functor) deriving newtype (Semigroup, Monoid) type Overlay a = AttrSet a -> AttrSet a -> AttrSet a apply :: forall a. [Overlay a] -> AttrSet a -> AttrSet a apply overlays attrSet = fix go where go :: AttrSet a -> AttrSet a go final = let fs = map (\overlay -> overlay final) overlays in foldr (\f as -> f as <> as) attrSet fs

Which uses fix to tie the knot, so that each overlay has access to the final result of applying all overlays. To illustrate, if we do:

find :: AttrSet a -> Text -> Maybe (Attr a) find (AttrSet m) k = HMap.lookup k m set :: AttrSet a -> Text -> Attr a -> AttrSet a set (AttrSet m) k v = AttrSet $ HMap.insert k v m overlayed = apply [ \final prev -> set prev "a" $ maybe (Leaf 0) (fmap (* 2)) (find final "b"), \_final prev -> set prev "b" $ Leaf 2 ] (AttrSet $ HMap.fromList [("a", Leaf 1), ("b", Leaf 1)])

we get:

λ overlayed AttrSet (fromList [("a",Leaf 4),("b",Leaf 2)])

Note that "a" is 4, not 2. Even though the "a = 2 * b" overlay was applied before the "b = 2" overlay, it had access to the final value of "b." The order of overlays still matters (it's right-to-left in my example tnx for foldr). For example, if I were to add another "b = 3" overlay in the middle, then "a" would be 6, not 4 (and if I add it to the end instead then "a" would stay 4).
by kylecazar | 2025-04-13 13:30:28+00:00
Yeah, at least anecdotally that's true from my observation. I grew up in the US but spent time living abroad, so have networks in multiple places.

American friends ditched the site en masse starting around 2012. By now, none of my original American circle is using the site and my timeline/feed is entirely dead except for frequent posts by foreigner friends.
by slaw | 2025-04-13 13:30:41+00:00
BYD Dolphin is size of Golf not Polo.

BYD Dolphin weight 1600kg, length 4290mm.

VW Polo weight 1580kg, length 3971 mm.

https://www.automobiledimension.com/model/byd/dolphin

https://auto.economictimes.indiatimes.com/cars/volkswagen-po...
by mark_l_watson | 2025-04-13 13:30:53+00:00
What a great find. Not sure why I have not discovered Prot before. Bookmarked the article and this thread.

I have been using Emacs for about 40 years, and as a crazy side effect of the mountain of LLMs hype, with a lot of productivity enhancing goodness, I think that Emacs can only gain in popularity because of several excellent Emacs LLMs packages. Most of the world is exploiting LLMs with VSCode and its variants, but Emacs is also just about perfect for integrating LLMs into workflows and for having fun and playing around.
by PaulHoule | 2025-04-13 13:31:15+00:00
Schizotypy was doomed to obscurity by Gordon Claridge and his frickin' conference proceedings. As opposed to the taxonic concept of Meehl where it is some condition you have or you don't, they just wrote numerous papers where they graded people on scales so now there is a "psychoticism" scale that competes with the "neuroticism" scale of the Big 5.

The DSM diagnosis for STPD

https://en.wikipedia.org/wiki/Schizotypal_personality_disord...

eluded me for a long time, it was when I came across Meehl's concept as articulated by Lezengreber

https://en.wikipedia.org/wiki/Schizotypy#Development_of_the_...

in particularly items (3) and (4) that made me understand why my life went the way it it did. Meehl postulated that schziotypy has a developmental disorder schizotaxia which then leads to negative social learning that causes it to become a personality disorder, it's a mistake to look at it primarily as a PD.
by bcrl | 2025-04-13 13:31:25+00:00
> These are little bit different than than what a swappable system would entail, aren't they?

From an electrical point of view, swapping batteries is fundamentally the same general problem regardless of whether they are large or small: you want to avoid arcing when the connector is plugged in, and you need to avoid exposing the user to stray voltage. Sure, there's added complexity to achieve that in a safe and cost effective manner when high voltages are involved, but it's a solved problem as the charge port does exactly this today.

> Okay maybe I miss read the initial premise but I took it as a home user swapping in-and-out modules themselves.

Current EVs on the market suffer from decreased maintainability compared to traditional ICE vehicles. The battery swapping skill set needs to be more widely available so that we don't see EV owners being dinged $40k for a battery swap. There are videos on Youtube showing people doing a battery swap themselves, and while it is challenging, it's not all that hard to do safely when the battery is not damaged given that the battery packs don't expose high voltage on the connectors when not enabled. Of course a damaged battery pack means that all bets are off on the safety front depending on the nature of the damage.

> That would appear to me to be a significantly different engineering challenge and safety issue than what's currently deployed in consumer market EVs...

> I'm not even sure the small upside here would justify the added costs and complexity either.

It a solved problem!!! Just put the charge port at the back of the vehicle and then use it for the add-on battery pack like the existing signal light connectors for trailers. You're done. The only added design constraints on the EV are on the location of the port and verification that it works while the vehicle is being driven. The F150 Lightning fails this today since the charge port is just in front of the driver side door, but relocating the charge port is not exactly rocket science.

Many EVs have already taken the step of making the charge port bidirectional so that the expensive battery in an EV can be used to provide power during an outage or to balance the load on the grid, and that is a far, far more complicated problem than accepting power from an external battery pack through the charge port while the vehicle is operating.
by sateesh | 2025-04-13 13:32:02+00:00
> In this case, a deferred call to close the channel in HandlePlayer is sufficient

It is not clear from the example, but I presume there would multiple players, i.e there will calls of the form:

g.HandlePlayer(p1) g.HandlePlayer(p2) ..

in such a case one player closing the channel would affect rest of the producers too.