10 interesting stories served every morning and every evening.

OpenLogi

openlogi.org

HID++BoltUnifyingBluetoothUSB

Your Logitech mouse,fi­nally lo­cal.

A lo­cal-first al­ter­na­tive to Logitech Options+, writ­ten in Rust.Remap but­tons, drive DPI and SmartShift over HID++.No ac­count, no teleme­try.

$brew in­stall –cask open­logi

.dmg.deb / .rpm / .pkg.tar.zst.msiMIT / Apache-2.0Not af­fil­i­ated with Logitech

Click a but­ton, bind an ac­tion.

The cen­ter of the app, work­ing right here: a mouse di­a­gram with click­able hotspots and a per-but­ton ac­tion picker. Choose a hotspot, then bind any of the built-in ac­tions.

con­fig.tomlschema_ver­sion = 2

schema_ver­sion = 2selected_device = 2b042”[devices.2b042.bindings]MiddleClick = MissionControl”DpiToggle = CycleDpiPresets”Thumbwheel = VolumeUp”Forward = BrowserForward”Back = BrowserBack”GestureButton = AppExpose”

schema_ver­sion = 2

se­lect­ed_de­vice = 2b042”

[devices.2b042.bindings]

MiddleClick = MissionControl”

DpiToggle = CycleDpiPresets”

Thumbwheel = VolumeUp”

Forward = BrowserForward”

Back = BrowserBack”

GestureButton = AppExpose”

MX Master 4Writes straight to con­fig.toml, the file you own.

Everything Options+ does, with­out the ac­count.

OpenLogi dri­ves your mouse over HID++ di­rectly: but­tons, DPI and SmartShift, from a na­tive app that never phones home.

HID++ 2.044 ac­tions

Remap any but­ton

Bind any of 44 built-in ac­tions to each phys­i­cal but­ton, per de­vice. Custom short­cuts, app launch­ers and scripted ac­tions too.

DPI con­trol & pre­sets

Set pointer res­o­lu­tion and cy­cle your own pre­sets, writ­ten straight to the sen­sor over HID++.

HID++ 0x2201

SmartShift

Flip the wheel be­tween ratchet and free-spin, or let it switch au­to­mat­i­cally by scroll speed.

HID++ 0x2111

Per-app pro­file­sCom­ing soon

Per-application over­lays that switch the mo­ment your fo­cused app does. Ships in a later re­lease.

Bolt, Unifying, Lightspeed, Bluetooth or wired

Reach de­vices over a Logi Bolt, Unifying or Lightspeed re­ceiver, a di­rect Bluetooth pair­ing, or a USB ca­ble. No re­ceiver re­quired.

Live de­vice view

A carousel of paired de­vices with bat­tery per­cent­age and charge state for every­thing on­line.

HID++ 0x1004

Nothing be­tween your mouse and your ma­chine.

No ac­count, no teleme­try, no cloud. Bindings live in a plain TOML file you own, and every change goes straight to the de­vice over HID++.

NetworkDevice ren­ders only

Up and run­ning in a minute.

Signed builds for ma­cOS, Linux and Windows. Pick your plat­form be­low. Step-by-step setup lives in the docs.

.dmg.deb.rpm.msi

ma­cOS

$brew in­stall –cask open­logi

Homebrew is rec­om­mended, or grab the signed .dmg for Apple sil­i­con or Intel.

Linux

Packages for amd64 and ar­m64, with .rpm and Arch .pkg.tar.zst builds also avail­able.

Windows

New

The newest port: signed x86_64 and ar­m64 in­stallers, val­i­dated on Windows 11.

Quit Logi Options+ be­fore launch­ing: the two fight over HID++ ac­cess, and only one app can own a re­ceiver at a time. On Linux, the same ap­plies to Solaar.

It’s on the roadmap, at the far end: a cross-com­puter pointer and clip­board bridge is a very large fea­ture. The half that lives in the pro­to­col al­ready ships. OpenLogi dri­ves Easy-Switch host switch­ing over HID++ (0x1814/0x1815), and paired mice fol­low the key­board when it switches hosts. If the rest lands, it will be opt-in and lo­cal-net­work only.

Bolt pair­ing ships in the GUI, and Unifying and Lightspeed pair­ing is in progress. Until it lands, pair once with Logitech’s tool or Solaar; OpenLogi dri­ves the de­vice from then on.

Not yet, though an im­porter is in progress. In the mean­time, bind­ings are a short TOML file you can re­build in min­utes, and un­like Options+ they stay in one portable, hand-ed­itable file.

OpenLogi remaps the side but­tons (Back, Forward, mid­dle click) through a CGEventTap, and ma­cOS puts event taps be­hind the Accessibility per­mis­sion. The HID++ paths (gesture but­ton, thumb wheel, DPI, SmartShift) don’t need it.

Only when you ask. The in-app up­date check is opt-in and off by de­fault; new builds come from Homebrew (brew up­grade –cask open­logi) or the signed in­stallers on the re­leases page.

Copy the TOML file. Devices are keyed by phys­i­cal iden­tity (receiver se­r­ial and slot, or the de­vice’s own se­r­ial), so the same mouse keeps its bind­ings wher­ever the file goes. Built-in sync may come one day, but it’s hard to square with the no-ac­count prin­ci­ple.

Being ambitious and being a dad | Nicholas Charriere

nicholascharriere.com

Being am­bi­tious and be­ing a dad

When I was go­ing through YC, I did­n’t men­tion my seven month old daugh­ter to any­one. Now a few years later I have two kids, a dog and a very packed sched­ule. My kids are the best thing in my life. For years, my work was my life. Now my life com­petes with my work.

I don’t think I’m alone. Here’s Paul Graham in Having Kids:

Some of my wor­ries about hav­ing kids were right, though. They def­i­nitely make you less pro­duc­tive. I know hav­ing kids makes some peo­ple get their act to­gether, but if your act was al­ready to­gether, you’re go­ing to have less time to do it in.

Some of my wor­ries about hav­ing kids were right, though. They def­i­nitely make you less pro­duc­tive. I know hav­ing kids makes some peo­ple get their act to­gether, but if your act was al­ready to­gether, you’re go­ing to have less time to do it in.

I love build­ing, learn­ing, and com­pet­ing. Life be­fore kids was straight­for­ward: I worked hard and cen­tered my life around things I love: com­put­ers, tech­nol­ogy, friends. I moved to SF, worked at some awe­some com­pa­nies, met a won­der­ful girl and built a strong re­la­tion­ship. A huge amount of my time was spent on work, and yet there was still some left for that and more. Turns out, you have a lot of time when you don’t have de­pen­dents.

All the peo­ple I ad­mire most are builders. I have de­voured bi­ogra­phies and stud­ied many great founders. Unfortunately this led me to an un­com­fort­able con­clu­sion: most of them are hor­ri­ble par­ents.

Steve Jobs lit­er­ally aban­doned his daugh­ter Lisa be­cause the time was­n’t right” (he was fo­cused on Apple). Einstein aban­doned one kid1 and was con­stantly ab­sent, day­dream­ing about work around his other two, to the point where his wife di­vorced him and took them. Elon Musk has so many chil­dren and com­pa­nies that he me­chan­i­cally can­not spend any sig­nif­i­cant amount of time with any of them. Edison, Ford, Ferrari,… the list goes on and on. Most bi­ogra­phies of great founders I’ve read have had an­other story etched in be­tween the lines: a pretty bleak one of a bad par­ent.

I know many am­bi­tious par­ents; it’s not an un­com­mon com­bi­na­tion. Most of them are will­ing to make a choice that I will not: del­e­gate the par­ent­ing away. I do not be­lieve the qual­ity time the­ory. I firmly be­lieve in max­i­miz­ing the quan­tity of time spent with them; there are no di­min­ish­ing re­turns for them on that front. This is some­what prob­lem­atic, and un­for­tu­nately it gets worse. The time spent is even more im­por­tant when they’re young, which of course hap­pens to co­in­cide with the prime of my ca­reer.

I’ll find my­self plan­ning my work or re­flect­ing on how much I ac­com­plished to­day or in the last week and the re­sult is clear. I’m a pro­duc­tive and well or­ga­nized per­son, but com­par­ing the out­put of par­ent-me to the kid­less-me in a given week re­veals a vis­i­ble gap. Everyone knows life is short. Now that I have kids, it feels 10x shorter.

This sucks. I am am­bi­tious: I wake up every morn­ing with a burn­ing fire in my stom­ach to build awe­some things. In this, I dif­fer from Paul Graham:

I hate to say this, be­cause be­ing am­bi­tious has al­ways been a part of my iden­tity, but hav­ing kids may make one less am­bi­tious.

I hate to say this, be­cause be­ing am­bi­tious has al­ways been a part of my iden­tity, but hav­ing kids may make one less am­bi­tious.

I am not less am­bi­tious. But I am also am­bi­tious about be­ing a great dad.

My anec­do­tal ob­ser­va­tions show a pretty strict di­chotomy: great fa­thers and great achiev­ers rarely over­lap. Rarely is not never though. Some fig­ures in tech­nol­ogy (Paul Graham, DHH, Jeff Dean, even Mark Zuckerberg) seem to be push­ing on both fronts with rare suc­cess. Often the pat­tern is early suc­cess, but not al­ways. Frankly even if I could­n’t find the pat­tern, I would still not ac­cept de­feat.

I don’t have a per­fect mag­i­cal so­lu­tion. I’m voic­ing a frus­tra­tion, but I am also re­ject­ing the choice. I’ve come to re­de­fine am­bi­tion for my­self: am­bi­tion is be­ing a great dad as well as build­ing great things. I ac­knowl­edge and ac­cept that it is much more dif­fi­cult than just aim­ing for one or the other, and both are hard enough in their own right. But hard is the point of am­bi­tion, right?

My strat­egy is pretty sim­ple: stay fo­cused, don’t waste time on bull­shit, keep im­prov­ing ex­e­cu­tion. I do this by care­fully clar­i­fy­ing what I want my work to be, fo­cus­ing on health to max­i­mize en­ergy, set­ting clear rules on time with kids (weekday din­ners, week­ends pri­or­i­tize fam­ily) and com­pletely re­mov­ing time-wast­ing ac­tiv­i­ties. With clear goals and dis­ci­pline, my plan is to achieve com­pound­ing gains.

I am writ­ing this be­cause I never hear any­one say it.

Be am­bi­tious enough to be an am­bi­tious dad.

Footnotes

It’s ac­tu­ally not clear whether it was aban­don­ment or early death — see the Einstein fam­ily. ↩

It’s ac­tu­ally not clear whether it was aban­don­ment or early death — see the Einstein fam­ily. ↩

Discuss on Hacker News

How a joke domain purchase turned in geopolitical warfare

sprocketfox.io

Strap in, this story in­volves a cheese for­tune teller, the de­part­ment of war, and nearly every other gov­ern­ment de­part­ment in be­tween.

Strap in, this story in­volves a cheese for­tune teller, the de­part­ment of war, and nearly every other gov­ern­ment de­part­ment in be­tween.

In 2017 (I think?) I was in­tro­duced to weather bal­loon hunt­ing by Mark VK5QI. At the time the Australian bal­loon chas­ing com­mu­nity was small. Only Melbourne and Adelaide ra­dioson­des (the trans­mit­ter on weather bal­loons) were be­ing tracked on a web­site called Habhub - high al­ti­tude bal­loon­ing hub. This site was de­signed for am­a­teur bal­loons and not me­te­o­ro­log­i­cal weather bal­loons.

Over time more and more ra­dioson­des were tracked on Habhub and even­tu­ally Habhub ad­mins in­tro­duced a de­fault fil­ter that re­moved weather bal­loons by de­fault. A query pa­ra­me­ter could be added to the URL to re­move the fil­ter and on 12th of May 2018 son­de­hub.org reg­is­tered with a sin­gle pur­pose - a URL redi­rect to Habhub with a ra­diosonde spe­cific fil­ter. To be clear - this was more of a joke than a de­ci­sion to run a ra­diosonde track­ing ser­vice. You’d go to son­de­hub.org and it would redi­rect you to hab­hub.org. That was it.

However Habhub was never de­signed for so many unique bal­loons each day. By July we de­cided to start prox­y­ing ra­diosonde in­ges­tion data through SondeHub. This al­lowed us to cap­ture more data as well (no longer rate lim­it­ing our selves). This went to a seper­ate OpenSearch clus­ter, how­ever at this stage we did­n’t use or ex­pose this data. I was us­ing this more as a toy - to play around with dif­fer­ent Amazon Web Services (AWS) ser­vices and an­a­lyt­ics plat­forms.

By 2019 the Habhub servers were re­ally strug­gling - aprs.fi as well. We re­alised that we needed to run our own ser­vice and our ini­tial plan was that we would build new APIs, and even­tu­ally new fron­tend. We then started get­ting in­for­ma­tion re­quests from gov­ern­ment agen­cies re­gard­ing ra­diosonde data. For ex­am­ple we re­ceived a re­quest re­gard­ing an in­sur­ance claim about a ra­dioson­des hit­ting a horse, caus­ing it to bolt through a fence. One of the rea­sons for this is be­cause un­like of­fi­cial soft­ware at the time, our sys­tem tracked the ra­dioson­des all the way to the ground.

Also in 2019 we de­tected a drop in ra­diosonde launches. This lined up with the GPS rollover date - we thought our soft­ware was bro­ken how­ever it turned out to be is­sues with Vaisala’s equip­ment which pre­vented launches from oc­cur­ing. Funnily enough our soft­ware han­dled the rollover ok.

In 2020/2021 we ended up do­ing was build­ing back­wards com­pat­i­ble APIs for the Habhub fron­tend and started test­ing the Habhub fron­tend pointed at our back­end. It mostly worked. We started re­ceiv­ing all the data rather than just par­tial data and pro­vid­ing open ac­cess to our data via S3. We even started run­ning our own pre­dic­tor - which is used by my en­ti­ties to­day.

With our own pre­dic­tor run­ning Mark de­vel­oped a sys­tem we call re­verse pre­dic­tions. This is where we take data from an al­ready launched ra­diosonde and use the wind model to run the pre­dic­tor back­wards which de­ter­mines a rough the launch lo­ca­tion pre­dic­tion. It works ex­tremely well. We could de­tect a bunch of ra­diosonde launch sites that were poorly oth­er­wise doc­u­mented along with start as­sign­ing bal­loons to launch sites.

Our first taste of deal­ing with the mil­i­tary

Then in 2021 we re­ceived an email

sen­si­tive/​mil­i­tary/… in­stal­la­tion. As such, we re­ally pre­fer that it is not ex­plic­itly marked on any map.

sen­si­tive/​mil­i­tary/… in­stal­la­tion. As such, we re­ally pre­fer that it is not ex­plic­itly marked on any map.

The thing is though that wind data is­n’t just used for pre­dict­ing the weather. It’s also used to cal­cu­late ar­tillery rang­ing. What we had started do­ing is ac­ci­den­tally map­ping out ar­tillery sites. We de­cided to keep re­verse pre­dic­tions but we delete launch sites on gen­uine re­quests.

The re­verse pre­dic­tion sys­tem has also de­tected many num­ber of mil­i­tary ves­sels in the ocean.

Lots more de­vel­op­ment hap­pened on SondeHub with fea­tures like web­sock­ets and MQTT for live feeds. We dis­con­nected Habhub back­end from our proxy and with grant fund­ing from ARDC we were able to setup a pro­to­type am­a­teur high al­ti­tude bal­loon ver­sion of SondeHub.

Eventually Habhub was shut­down due to a lack of main­te­nance and we rushed to­gether to mi­grate what we could to SondeHub.

$439,000 mis­sile vs party bal­loon

All was go­ing fine un­til the 2023 China spy bal­loon” in­ci­dent. SondeHub had a lot more traf­fic - but our ar­chi­tec­ture made it fairly man­age­able.

Then Feb 11th 2023 the US al­legedly used AIM-9X Sidewinder to shot down an am­a­teur ra­dio bal­loon. That morn­ing I woke to high us­age alarms in my in­box. SondeHub had been linked to on the Washington Post. Our site man­aged to han­dled the ex­tra traf­fic rea­son­ably well.

Since then we’ve many sup­port re­quests from .mil and .gov ad­dresses. We’ve also had re­quests from avi­a­tion in­dus­try / air con­trol tow­ers.

In Dec 2024 - alarms in my in­box again. This time get­ting alarms for pre­dic­tions. Someone de­cided to smash our api. This seem­ingly starts hap­pen­ing every week.

Full scale in­va­sion

We turn on log­ging. The re­quests com­ing from a sin­gle IP. We had some sus­pi­cions that a pri­vate com­pany was us­ing our back­end to gen­er­ate pre­dic­tions. We poke their web­site to see - sure enough they are - an an­gry email to them. However they weren’t the prob­lem.

We ask some peo­ple.

Note that the pre­ci­sion of these points has been in­ten­tion­ally been re­duced. This data is also sig­nif­i­cantly old and does not show the en­tire dataset. This blog post has been de­layed un­til bal­loon war­fare was more com­mon knowl­edge.

Note that the pre­ci­sion of these points has been in­ten­tion­ally been re­duced. This data is also sig­nif­i­cantly old and does not show the en­tire dataset. This blog post has been de­layed un­til bal­loon war­fare was more com­mon knowl­edge.

Fuck. And Fuck Russia.

(for time trav­ellers and peo­ple in the fu­ture - in 2022 started a special mil­i­tary op­er­a­tion” - aka a full scale in­va­sion into Ukraine. The war con­tin­ues at time of writ­ing. Fuck Russia)

Suddenly my mind was filled with ethic and le­gal ques­tions. We also sus­pected they aren’t us­ing the API cor­rectly. However we did­n’t know how to get in con­tact.

We did even­tu­ally got some mes­sages out via a con­tact

We work with mHAB’s as you know, but some other groups likely fly fixed-wing and use Sondehub to help them surf” the sky to tar­get ar­eas.

We work with mHAB’s as you know, but some other groups likely fly fixed-wing and use Sondehub to help them surf” the sky to tar­get ar­eas.

Sent this in Ukrainian to a few milchats and will see what turns up: I wish every­one good health. If any­one knows of a deep strike team that uses a python script with some open source wind fore­cast­ing en­gine, please con­tact me di­rectly. They are caus­ing nu­mer­ous prob­lems with queries, which can lead to them be­ing blocked and they need to take ac­tion to be able to con­tinue us­ing the pre­dic­tion sys­tem.””

Sent this in Ukrainian to a few milchats and will see what turns up: I wish every­one good health. If any­one knows of a deep strike team that uses a python script with some open source wind fore­cast­ing en­gine, please con­tact me di­rectly. They are caus­ing nu­mer­ous prob­lems with queries, which can lead to them be­ing blocked and they need to take ac­tion to be able to con­tinue us­ing the pre­dic­tion sys­tem.””

I also quickly rushed to­gether a docker com­pose file so any­one could quickly run their own pre­dic­tor that was­n’t re­liant on us.

Meanwhile (and you might have no­ticed me ask­ing for AWS help on fedi) we con­tacted AWS as the source IP was from an AWS net­work. It was very im­por­tant how­ever to make sure the AWS sup­port did not shut­down ac­cess.

Our mes­sag­ing in­cluded:

It is in­cred­i­bly im­por­tant that the http re­quest data is not dis­trib­uted. It is also im­por­tant that the source AWS ac­count is not blocked, rate lim­ited or ter­mi­nated - loss of life could oc­cur.

It is in­cred­i­bly im­por­tant that the http re­quest data is not dis­trib­uted. It is also im­por­tant that the source AWS ac­count is not blocked, rate lim­ited or ter­mi­nated - loss of life could oc­cur.

Something that I thought I’d never have to write in sup­port emails. The mes­sag­ing was im­por­tant be­cause I did not want the ser­vice cut off, and I did not want the data to re­veal launch sites.

After a bit of wait­ing we re­ceived:

AWS reached out to me that a lambda func­tion of mine was flagged for po­ten­tially scrap­ing api.v2.son­de­hub.org and they told me to reach out to you to get this re­solved.

AWS reached out to me that a lambda func­tion of mine was flagged for po­ten­tially scrap­ing api.v2.son­de­hub.org and they told me to reach out to you to get this re­solved.

We emailed back and forth and pro­vided doc­u­men­ta­tion on how to run the pre­dic­tor lo­cally.

Office of the Secretary of War (Intelligence and Security)

In 2025 we re­ceived a re­quest for data from the Office of the Secretary of War (Intelligence and Security)” (US). Generally if there’s mu­tual com­mu­nity ben­e­fit we’ll find, process and re­lease the data for free. However given this is was the Department of War and no ex­pected com­mu­nity ben­e­fit we de­cided they should pay for the data. I was hes­i­tant even work­ing with them, as I don’t re­ally want to help mil­i­tary, let alone the US - but since our data is pub­lic if we did­n’t do it some­one else prob­a­bly would. So my rea­son­ing shifted to, may as well ex­tract some funds to pay for SondeHub in­fra­struc­ture at the very least.

An in­voice was cre­ated and sent through - but never paid or fol­lowed up on. I have no idea why they were re­quest­ing the data or what it was about.

Other tid­bits along the way

It has­n’t just been the mil­i­tary that we get emails from. Occasionally cit­i­zens who find ra­dioson­des end up con­tact­ing us (often we don’t know how they even find us), along with a range of other or­gan­i­sa­tions.

National Transportation Safety Board (US)

In September 2025 the NTSB con­tacted us. My first re­ac­tion was to search for news sto­ries.

do you have in­for­ma­tion on any bal­loons in the Utah are be­tween 1200 and 1300 UTC on 10/16/2025

do you have in­for­ma­tion on any bal­loons in the Utah are be­tween 1200 and 1300 UTC on 10/16/2025

We pro­vided our data but also started hear­ing some ru­mours about a pos­si­ble plane / weather bal­loon col­li­sion that was re­ported via ACARS. While none of the bal­loons tracked by SondeHub lined up, we did for­ward some in­for­ma­tion that a Windborne bal­loon was in the area. Windborne later con­firmed this was the likely col­li­sion and have made sev­eral changes to their sys­tem to pre­vent fu­ture is­sues.

We have a num­ber for you to call when you’re ready to copy

Please con­tact us as soon as prac­ti­ca­ble with more in­for­ma­tion… Contact our Operations Manager at

Please con­tact us as soon as prac­ti­ca­ble with more in­for­ma­tion… Contact our Operations Manager at

This was a re­ally strange in­ter­ac­tion for us. A tower(?) op­er­a­tions su­per­vi­sor was re­quest­ing in­for­ma­tion about bal­loons in the area. The bal­loons in ques­tion were me­te­o­ro­log­i­cal weather bal­loons. Not launched by am­a­teurs. We had to ex­plain that they are nor­mally sched­uled, not con­trolled, and fall (probably, not a lawyer) within Part 101.D of FAA regs. Along with that we did­n’t have con­tacts or reg­is­tra­tion de­tails of these launches.

We have a lot of Aircraft in the sky that don’t want to get too close to one of these bal­loons! Is there any way to co­or­di­nate more di­rectly with the con­trol­ling en­tity, or to have them give us mis­sion de­tails and con­tact in­for­ma­tion ahead of time? It sounds like you guys have a big op­er­a­tion, I don’t know if this is a one off event or if you have sys­tems in place to com­mu­ni­cate these things

We have a lot of Aircraft in the sky that don’t want to get too close to one of these bal­loons! Is there any way to co­or­di­nate more di­rectly with the con­trol­ling en­tity, or to have them give us mis­sion de­tails and con­tact in­for­ma­tion ahead of time? It sounds like you guys have a big op­er­a­tion, I don’t know if this is a one off event or if you have sys­tems in place to com­mu­ni­cate these things

Explaining to the FAA that weather bal­loons ex­ist was­n’t on my bingo card.

Hit and run

On 2/5 around 8pm was there a bal­loon lo­cated in Anamosa Iowa?

On 2/5 around 8pm was there a bal­loon lo­cated in Anamosa Iowa?

Someone re­cov­ered a ra­diosonde from a prop­erty but ran into a build­ing along the way. They left with­out leav­ing a note. The prop­erty owner con­tacted us for help to lo­cate the per­son.

Jam, tasty tasty jam

There’s a great site that uses ADSB data to track GPS jam­ming called gp­s­jam.org. We’ve also been de­tect­ing not only a lot of GPS jam­ming but also GPS spoof­ing. I al­ways find the pat­terns in­ter­est­ing. I’ve been pre­sum­ing that the pat­tern is ei­ther for mak­ing the im­pacted tar­gets eas­ier to iden­tify or to crash the ve­hi­cle in a spe­cific way?

The cheese for­tune teller and other job ti­tles we’ve seen over the years

Probably the most in­ter­est­ing job ti­tle we’ve had the plea­sure of read­ing in an email is from Jennifer Billock, Freelance Writer and Author, Certified Tea Specialist, Cheese Fortune Teller. Jennifer wrote an ar­ti­cle for STNDRDS about weather bal­loons which is out­side our usual places of ex­po­sure.

During this time we’ve seen many job ti­tles and sub­jects, I’ve started col­lect­ing them.

[SEC=🌶️🌶️🌶️]

Naval Air Warfare Center — Aircraft Division Maritime Patrol and Reconnaissance Aircraft (MPRA) Program

Acquisition Program Manager Integrated Processes Branch HQ AFRL/XPOP

Upper Air Quality Assurance Meteorologist Observing Systems & Operations, Data & Digital Group

Senior Advisor for Safety and Quality

Meteorologist Weather Forecast Office

Manager Upper Air Network

General Manager Observing Systems and Operations and Chief Engineer

Meteorologist National Weather Service

Field Research Manager, Center for Western Weather and Water Extremes

Video Journalist, Visual Investigations - NY Times

Senior Meteorologist, National Transportation Safety Board

Operations Supervisor U.S. Department of Transportation/FAA

STNDRDS Freelance Writer and Author, Certified Tea Specialist, Cheese Fortune Teller

Meteorológiai fe­jlesztő (met.hu)

SUNY Oswego Lab Technician Atmospheric and Geological Science

SpaceBalloon Project

Any many more

The weird

Most or­gan­i­sa­tion and ven­dors are will­ing to work with us. This is be­cause chas­ing ra­dioson­des re­moves them from the en­vi­ron­ment and pro­motes cit­i­zen sci­ence. I asked Meteolabor AG for one of their ra­dioson­des so that we could con­firm com­pat­i­bil­ity. This is what I re­ceived back.

Official re­sponse from Meteolabor AG: For strate­gic rea­sons, we do not pro­vide any data or sam­ple de­vices. Our trans­mit­ters shut down af­ter a cer­tain pe­riod of time, at the lat­est when the bat­tery ca­pac­ity is ex­hausted. This is due, among other things, to strate­gic con­sid­er­a­tions. We are aware of the so-called waste prob­lem.

Personal com­ment: I would per­son­ally like to draw at­ten­tion to mil­i­tary ac­tiv­i­ties, par­tic­u­larly in the Middle East, which re­sult in sig­nif­i­cantly (exponentially) more waste and toxic sub­stances be­ing re­leased into the at­mos­phere and left ly­ing around in the en­vi­ron­ment — or en­ter­ing the food and wa­ter cy­cles In ad­di­tion to mil­i­tary op­er­a­tions, count­less missions” are cur­rently be­ing flown over Europe with the aim of leav­ing contrails” in the sky [rather chemtrails”]. I know their pur­pose; I know what NetZero is sup­posed to achieve, and what de­car­boniza­tion and CO2 re­duc­tion are in­tended to ac­com­plish. I am well-in­formed about the cli­mate hoax. Start there! The peo­ple to talk to are politi­cians, NGOs, and very wealthy old white men.

Official re­sponse from Meteolabor AG: For strate­gic rea­sons, we do not pro­vide any data or sam­ple de­vices. Our trans­mit­ters shut down af­ter a cer­tain pe­riod of time, at the lat­est when the bat­tery ca­pac­ity is ex­hausted. This is due, among other things, to strate­gic con­sid­er­a­tions.

We are aware of the so-called waste prob­lem.

Personal com­ment: I would per­son­ally like to draw at­ten­tion to mil­i­tary ac­tiv­i­ties, par­tic­u­larly in the Middle East, which re­sult in sig­nif­i­cantly (exponentially) more waste and toxic sub­stances be­ing re­leased into the at­mos­phere and left ly­ing around in the en­vi­ron­ment — or en­ter­ing the food and wa­ter cy­cles

In ad­di­tion to mil­i­tary op­er­a­tions, count­less missions” are cur­rently be­ing flown over Europe with the aim of leav­ing contrails” in the sky [rather chemtrails”]. I know their pur­pose; I know what NetZero is sup­posed to achieve, and what de­car­boniza­tion and CO2 re­duc­tion are in­tended to ac­com­plish. I am well-in­formed about the cli­mate hoax.

Start there! The peo­ple to talk to are politi­cians, NGOs, and very wealthy old white men.

Which is… cer­tainly some­thing.

Onwards

GrapheneOS (@GrapheneOS@grapheneos.social)

grapheneos.social

To use the Mastodon web ap­pli­ca­tion, please en­able JavaScript. Alternatively, try one of the na­tive apps for Mastodon for your plat­form.

Product - System - Cerebras

www.cerebras.ai

The Fastest AIJust Got Faster.

Introducing the all new Cere­bras CS-4, a rev­o­lu­tion­ary rack-scale so­lu­tion that de­liv­ers up to 30x faster in­fer­ence com­pared to GPUs, en­hanced eco­nom­ics, and a sim­ple path to de­ploy hy­per­scale ca­pac­ity. It is the ar­chi­tec­ture for fron­tier AI.​

Three WSE-3 Turbo per System​

Each wafer de­liv­ers up to 2x the speed of the pre­vi­ous gen­er­a­tion​

More Performance per Wafer​

All new power, cool­ing, and I/O un­leashes even more per­for­mance per wafer​

Nexus Rack-Scale Platform

Enables rapid de­ploy­ment in hy­per­scale dat­a­cen­ters​

Up to 30x faster than GPUs​

Powered by WSE-Turbo, CS-4 de­liv­ers up to 30x faster in­fer­ence com­pared to GPU sys­tems, set­ting a new record for the fastest in­fer­ence avail­able in pro­duc­tion.​

Higher ul­tra­fast through­put

The CS-4 so­lu­tion shifts the in­fer­ence Pareto fron­tier, de­liv­er­ing up to 10x more through­put per watt than CS-3 while gen­er­at­ing to­kens up to 30x faster than pro­duc­tion GPU sys­tems. The re­sult is a sys­tem de­signed to de­liver both through­put and in­ter­ac­tiv­ity.​

Frontier-ready ar­chi­tec­ture

By re­duc­ing wafer-to-wafer in­ter­con­nect la­tency to 2 mi­crosec­onds, CS-4 de­liv­ers more than 1,000 to­kens per sec­ond on mod­els ex­ceed­ing 10 tril­lion pa­ra­me­ters, pre­serv­ing in­ter­ac­tive de­code per­for­mance at un­prece­dented scale.​

BUILT FOR HYPERSCALE​

CS-4 is the first it­er­a­tion of the new Cerebras Nexus Platform Architecture. It is built around a mod­u­lar con­cept with three foun­da­tional el­e­ments: Compute, Power, and I/O — each with sig­nif­i­cant in­no­va­tion to sim­plify man­u­fac­tur­ing, de­ploy­ment, main­te­nance, and up­grades.​

Modular com­pute back­pack de­sign

Cerebras has fun­da­men­tally re-imag­ined the server. Each Wafer-Scale Backpack is a self-con­tained as­sem­bly that­folds the wafer, power con­ver­sion, di­rect liq­uid cool­ing, high-speed I/O, and con­trol elec­tron­ics into a com­pact 3D pack­age with 50% fewer com­po­nents. This de­sign sim­pli­fies man­u­fac­tur­ing and re­duces de­ploy­ment time from days to hours.​

High-density power de­liv­ery

With power de­liv­ery just 0.5 mil­lime­ters away from the proces­sor - roughly 100x closer than the roughly 50mm of con­ven­tional GPU boards - CS-4 nearly elim­i­nates board-level power loss. This en­ables the de­liv­ery of twice as much power to the WSE-3T, en­abling higher op­er­at­ing fre­quen­cies and faster to­ken gen­er­a­tion.​

Next-gen wafer I/O in­ter­face

CS-4 in­tro­duces a new pro­gram­ma­ble I/O subsystem that dou­bles I/O band­width and re­duces la­tency, ben­e­fit­ting both ag­gre­gated and dis­ag­gre­gated so­lu­tions. The Wafer I/O Module also en­ables wafers to be linked within and across racks with­out a switch, for wafer-to-wafer la­tency as low as two mi­crosec­onds that is key to in­ter­ac­tiv­ity for mod­els with tens of tril­lions of pa­ra­me­ters.​

Deploy in­fra­struc­ture then com­pute

CS-4 sep­a­rates the sta­ble power, cool­ing, and net­work layer from its mod­u­lar wafer-scale com­pute. The Cerebras PowerRack can be in­stalled and fa­cil­ity-qual­i­fied be­fore com­pute ar­rives. Compute back­packs then slide into place and con­nect to power, cool­ing, and data—re­duc­ing de­ploy­ment from days to hours while sim­pli­fy­ing ser­vice and fu­ture up­grades at hy­per­scale.​

CS-4 by the num­bers

First CS-4 ship­ments be­gin this quar­ter.​Bring the fastest AI to your data cen­ter.​​

FAQ

Civic Hygiene

shkspr.mobi

Imagine, just for a mo­ment, that the Government wanted to keep a record of every­one’s sex­u­al­ity. They need to know this de­tailed de­mo­graphic data be­cause it will be highly use­ful in civic plan­ning. It will help them work out what pro­vi­sion needs to be made for sex­ual health ser­vices, how many chil­dren are likely to be born, how many schools to build, etc.

You trust the Government, you voted for them, you and your friends have noth­ing to hide with re­gards to your sex­u­al­ity.

But! Shock hor­ror! After cre­at­ing the data­base, the Government loses the elec­tion and the ho­mo­phobes at UKIP get in to power!

Now they have a data­base of every gay in the vil­lage, and can ha­rass then, try to cure” them, or make their lives a liv­ing hell.

Far fetched? Not re­ally. With Cameron’s inane web fil­ter­ing plan, the black boxes” in ISPs which can record every click you make, and the sell­ing of the your NHS de­tails to pri­vate par­ties, we’re in a sit­u­a­tion where a ma­li­cious gov­ern­ment could cause se­ri­ous dam­age to us.

The se­cu­rity ex­pert Bruce Schneier wrote a won­der­ful ar­ti­cle for CNN on how the ex­ist­ing sur­veil­lance state is lead­ing to dis­as­trous breaches of our pri­vate in­for­ma­tion. He con­cludes by say­ing:

It’s bad civic hy­giene to build tech­nolo­gies that could some­day be used to fa­cil­i­tate a po­lice state.

– Bruce Schneier on CNN

It’s bad civic hy­giene to build tech­nolo­gies that could some­day be used to fa­cil­i­tate a po­lice state.

– Bruce Schneier on CNN

We have to be care­ful that the ap­pa­ra­tus we build can­not eas­ily be mis­used for evil pur­poses. Sure, even an in­nocu­ous toaster can be weaponised if some­one is will­ing enough, but we should not fall into the trap of mak­ing sys­tems which can eas­ily be turned against the peo­ple.

It’s prob­a­bly sen­si­ble to build a data­base of which car be­longs to which owner - it has an im­por­tant civil use and would be hard to abuse (although not im­pos­si­ble).

Should we have a na­tional data­base of, say, re­li­gious be­liefs? Almost in­stinc­tively the an­swer is no. The mem­o­ries of fas­cist dic­ta­tors haunt our col­lec­tive con­scious­ness. We have seen count­less times how race and re­li­gious iden­tity be­come death penal­ties. We would­n’t coun­te­nance it.

Civic hy­giene is­n’t about say­ing we dis­trust our cur­rent gov­ern­ment - it’s about not trust­ing the next gov­ern­ment.

Children's stunted lungs show recovery in ultra low emission zone

www.bbc.com

Scientists stunned’ by chil­dren’s lung re­cov­ery in ul­tra low emis­sion zone

20 hours ago

Smitha MundasadHealth re­porter

BBC

Scientists say they have been stunned” by how quickly young chil­dren’s lungs be­gan to re­cover and grow af­ter pol­lu­tion re­stric­tions were brought in where they lived.

Researchers found that chil­dren in London whose lung growth had been stunted by pol­lu­tion showed im­pres­sive im­prove­ments af­ter the in­tro­duc­tion of an Ultra Low Emission Zone (Ulez) in 2019 re­duced emis­sions.

The study fol­lowed more than 3,400 pri­mary school chil­dren in London and Luton and pro­vides what sci­en­tists be­lieve is the strongest ev­i­dence yet that lo­cal clean air zones could help re­duce some of the harm caused by pol­lu­tion dur­ing child­hood.

But in­de­pen­dent re­searchers cau­tion that other fac­tors must also be con­sid­ered.

Air pol­lu­tion can stunt the growth of young chil­dren’s lungs leav­ing them at an in­creased risk of asthma, heart dis­ease, di­a­betes and even pre­ma­ture death.

Children are also more vul­ner­a­ble to pol­lu­tion be­cause their lungs and im­mune sys­tems are still de­vel­op­ing. And when out­side, they tend to be closer to the ground and nearer sources of ex­haust fumes, for ex­am­ple.

In the study, re­searchers re­cruited six to nine-year-olds at­tend­ing pri­mary schools in London’s ul­tra low emis­sion zone and fol­lowed the same chil­dren for five years, com­par­ing them to sim­i­lar chil­dren (in terms of so­cio-eco­nomic back­ground, phys­i­cal ac­tiv­ity and eth­nic­ity) in Luton.

Children in the study had an­nual lung func­tion and ca­pac­ity tests in the year be­fore Ulez came in and for four years af­ter.

Initial re­sults showed chil­dren’s lungs in London were smaller in ca­pac­ity than those in Luton, which is less pol­luted than London but has a sim­i­lar mix of pol­lu­tants.

At the end of the study the chil­dren’s lung ca­pac­ity reached near iden­ti­cal lev­els in both groups.

While we would ex­pect chil­dren’s lungs to grow year on year, our re­sults in­di­cate that the London chil­dren’s lung growth had ac­cel­er­ated dur­ing the four years to catch up’ with the con­trol group in Luton to reach sim­i­lar lev­els of lung ca­pac­ity,” re­searchers say.

I was ab­solutely stunned when I first saw the re­sults,” Prof Chris Griffiths, a se­nior au­thor on the study, at Queen Mary University of London, told the BBC.

The speed of catch up in lung ca­pac­ity in the London group was sur­pris­ing and im­pres­sive.

This shows an am­bi­tious clean air zone can drive pol­lu­tion lev­els down, rapidly restor­ing chil­dren’s stunted lung growth.”

The main test mea­sured how much air a child could forcibly breathe out in one sec­ond af­ter a big breath in.

In prac­ti­cal terms the im­prove­ments could mean chil­dren in the London group could run as fast as the Luton group with­out get­ting out of breath or blow out the same num­ber of can­dles for ex­am­ple, Griffiths ex­plained.

Another way of test­ing for lung ca­pac­ity used in the study showed sig­nif­i­cant im­prove­ments too, though not to the same ex­tent - im­ply­ing there are still gains to be made.

Overall the pro­por­tion of chil­dren in London whose lung ca­pac­ity was deemed clinically im­paired” (suggesting lung dam­age re­sult­ing in coughs or breath­less­ness) fell from 14% to 9%.

In Luton - where some smaller scale mea­sures were put in place to tackle air pol­lu­tion - the fig­ures were 9% to 7%.

The team’s mea­sure­ments also showed the level of ni­tro­gen diox­ide chil­dren were ex­posed to fell faster in London than in Luton over this time.

Researchers say this is key as it likely demon­strates that the im­proved lung growth they saw was re­lated to air qual­ity im­prove­ments fol­low­ing the im­ple­men­ta­tion of Ulez.

London’s Ulez was first in­tro­duced in 2019 by Mayor Sadiq Khan in a bid to clean up London’s air”. London had high lev­els of the harm­ful gas ni­tro­gen diox­ide which comes from mo­tor ve­hi­cles.

Older, more pol­lut­ing ve­hi­cles had to pay a daily charge to drive in cen­tral London. The mea­sures were later ex­panded to cover the whole cap­i­tal. While many sup­ported the pol­icy it pro­voked po­lit­i­cal op­po­si­tion and protests.

Prof Anna Hansell, at the University of Leicester, who was not in­volved in the study said the im­proved lung func­tion in chil­dren was likely to have life­long ben­e­fits for their health.”

She added the study was carefully con­ducted by well-respected re­searchers” and that the ge­o­graph­i­cal com­par­isons be­tween London and Luton were im­por­tant as there had been gen­eral re­duc­tions in air pol­lu­tion over time.

This proved par­tic­u­larly use­ful, given that the study pe­riod in­cluded the Covid-19 pan­demic — and demon­strates the find­ings in London are not due to changes re­lated to the pan­demic,” she said.

Another as­pect to con­sider was that the London group may have been more likely to walk or cy­cle to school once Ulez came in.

Meanwhile, Kevin McConway, emer­i­tus pro­fes­sor at the Open University, said it was im­por­tant to take the full im­pact of Covid into ac­count and ar­gued that study­ing other cities could help tease out whether some im­prove­ments were due to un­mea­sured dif­fer­ences be­tween London and Luton.

Lead au­thor, Dr Helen Wood, at Queen Mary University of London said while the re­sults were very promis­ing there was no room for com­pla­cency as air pol­lu­tion in both London and Luton — as well as other cities across the UK — re­mains above WHO guide­line lev­els, so there is still work to be done”.

We know clean air zones are a com­plex area and the im­pact on busi­nesses and in­di­vid­u­als must be con­sid­ered. What we are do­ing is adding new ev­i­dence to in­form the de­bate,” Griffiths said.

There are more than a bil­lion kids liv­ing in cities around the world, most of them in pol­luted en­vi­ron­ments, get­ting a re­ally bad start in life.

That’s why these are im­por­tant find­ings with global rel­e­vance.”

The work in­volved re­searchers from the Universities of Bedfordshire, Oxford, Cambridge, Edinburgh and Southern California and is pub­lished in the Lancet Public Health.

GitHub - DenisSergeevitch/desktop-fly: A 3D fruit fly living on your macOS desktop, driven by a live spiking simulation of the real FlyWire connectome

github.com

DesktopFly 🪰

A 3D fruit fly that lives on your ma­cOS desk­top — dri­ven by a live spik­ing sim­u­la­tion of the real FlyWire con­nec­tome. It walks across your win­dows, grooms, sleeps, and de­cides to flee your cur­sor with the same neu­rons a real fly uses.

The fly’s brain win­dow: 23,210 real neu­ron soma po­si­tions from FlyWire v783, with live spikes flash­ing at real neu­ron lo­ca­tions. The two glow­ing yel­low mark­ers are the Giant Fibers — the es­cape com­mand neu­rons. Click any re­gion to stim­u­late it.

What’s real

23,210 neu­ron soma po­si­tions (of 139,255 in FlyWire v783) ren­der the ro­tat­ing brain win­dow, col­ored by su­per-class (FlyWire’s coarse cell-type group­ing).

A 668-neuron cir­cuit with ~19,000 real synap­tic con­nec­tions (synapse counts, signed by neu­ro­trans­mit­ter pre­dic­tion) runs as a 1 kHz leaky-in­te­grate-and-fire (LIF) sim­u­la­tion:

LC4 (104) + LPLC2 (210) loom­ing-de­tec­tor vi­sual neu­rons DNp01 / Giant Fiber (GF) (2) — the es­cape com­mand neu­ron DNa01 + DNa02 (4) steer­ing neu­rons · DNp09 (2) for­ward walk­ing DNg11 (6) groom­ing · MDN (4) back­ward walk­ing (“moonwalker”) DNp02/DNp04/DNp11 (6) es­cape-ma­neu­ver (wing) neu­rons their 330 strongest part­ners, in­clud­ing as­cend­ing (proprioceptive) and sen­sory (wind) neu­rons

LC4 (104) + LPLC2 (210) loom­ing-de­tec­tor vi­sual neu­rons

DNp01 / Giant Fiber (GF) (2) — the es­cape com­mand neu­ron

DNa01 + DNa02 (4) steer­ing neu­rons · DNp09 (2) for­ward walk­ing

DNg11 (6) groom­ing · MDN (4) back­ward walk­ing (“moonwalker”)

DNp02/DNp04/DNp11 (6) es­cape-ma­neu­ver (wing) neu­rons

their 330 strongest part­ners, in­clud­ing as­cend­ing (proprioceptive) and sen­sory (wind) neu­rons

Escape is not scripted. Your cur­sor’s ap­proach be­comes loom­ing in­put to the real LC4/LPLC2 cells; the fly takes off only when the Giant Fiber ac­tu­ally spikes through its real synapses — ~1,200 synapses of feed­for­ward in­hi­bi­tion push back, which is why slow ap­proaches are tol­er­ated and fast lunges trig­ger es­cape in ~4 ms, just like the real an­i­mal.

The body it­self is pro­ce­dural (FlyWire is a brain con­nec­tome — no body geom­e­try ex­ists), with a tri­pod gait, vis­i­ble wing-beat, al­ti­tude-scaled flight, groom­ing, and sleep pos­tures.

Installation

Requirements: ma­cOS 13+, Xcode Command Line Tools (Swift 5.9+). No per­mis­sions or en­ti­tle­ments needed — every­thing it senses (cursor, win­dow frames, clicks-as-taps, ther­mal state) is per­mis­sion-free.

git clone https://​github.com/​Denis­Sergee­vitch/​desk­top-fly.git cd desk­top-fly ./build.sh ./DesktopFly

A 🪰 item ap­pears in the menu bar; quit from there. The fly wan­ders your desk­top on a trans­par­ent, click-through over­lay — it never in­ter­cepts your mouse or key­board.

Controls (menu bar 🪰)

The brain win­dow is in­ter­ac­tive: hov­er­ing pauses the ro­ta­tion; click­ing a re­gion optogenetically” stim­u­lates the ~60 near­est cir­cuit neu­rons for 400 ms. The fly’s re­ac­tion is what­ever the real net­work does down­stream — click the Giant Fiber and it es­capes; click DNg11 and it grooms; click one side’s DNa01/02 and it turns.

How real neu­rons drive the body

The loop also closes body→brain: the gait rhythm feeds the cir­cuit’s real as­cend­ing (proprioceptive) neu­rons in phase with the legs, and fast cur­sor mo­tion stim­u­lates its sen­sory (wind) part­ners.

Desktop ecol­ogy (all per­mis­sion-free ma­cOS senses)

Window ter­rain: win­dow top edges are ledges — the fly lands on them, walks along them, rides a win­dow you drag, and star­tles when one closes un­der its feet.

Window looms: a win­dow ap­pear­ing near the fly feeds the loom­ing path­way; the cir­cuit de­cides whether to flee your di­alogs.

Clicks are sub­strate taps; click­ing next to the fly star­tles it through the wind→GF path­way. Typing is vi­bra­tion (idle-time API — knows when keys were pressed, never which).

Circadian rhythm: dawn/​dusk ac­tiv­ity peaks, mid­day siesta, night qui­es­cence. Sleep: idle at night → it sleeps, breath­ing slowly, with raised arousal thresh­old; it grooms af­ter wak­ing.

Temperature: flies are ec­totherms — a hot Mac is a faster fly.

Regenerating the data

data/ ships with com­pact de­rived files. To re­build them from the raw FlyWire Codex dumps (~60 MB down­load):

mkdir -p /tmp/flywire && cd /tmp/flywire B=https://​stor­age.googleapis.com/​fly­wire-data/​codex/​data/​fafb/​783 curl -O $B/classification.csv.gz” -O $B/coordinates.csv.gz” \ -O $B/connections.csv.gz” -O $B/consolidated_cell_types.csv.gz” cd - && python3 etl.py /tmp/flywire

Diagnostics

./DesktopFly –simtest # cir­cuit in­vari­ants: GF silent at rest, 4 ms loom la­tency, … ./DesktopFly –behaviortest # 17 end-to-end checks: stim­u­late neu­rons -> body re­acts ./DesktopFly –snapshot f.png # off­screen fly ren­der ./DesktopFly –brainshot b.png # off­screen brain ren­der

What’s mod­eled vs. mea­sured

Honesty sec­tion: the con­nec­tome gives wiring, not phys­i­ol­ogy. The LIF dy­nam­ics, neu­ro­trans­mit­ter signs (ACh+, GABA−, Glu−), the gap-junc­tion boost on LC→GF and wind→GF (documented elec­tri­cal cou­pling), synap­tic de­lays, and the sen­sory trans­duc­tion (cursor → loom­ing value) are stan­dard mod­el­ing choices lay­ered on the real graph. Everything down­stream of the sen­sory neu­rons — who con­nects to whom, and how strongly — is FlyWire data.

License & ci­ta­tion

Code is MIT. The files in data/ are de­rived from FlyWire (FAFB v783) and are CC BY-NC 4.0 — see data/​DA­TA_LI­CENSE.md. If you use this, cite:

Dorkenwald, S. et al. Neuronal wiring di­a­gram of an adult brain. Nature 634, 124 – 138 (2024). https://​doi.org/​10.1038/​s41586 – 024-07558-y

Schlegel, P. et al. Whole-brain an­no­ta­tion and multi-con­nec­tome cell typ­ing of Drosophila. Nature 634, 139 – 152 (2024). https://​doi.org/​10.1038/​s41586 – 024-07686 – 5

Remote workers report the highest well-being in study of 7,700 employees

www.colorado.edu

For years, many em­ploy­ers have wor­ried that work-from-home arrange­ments leave em­ploy­ees iso­lated, dis­con­nected from cowork­ers and more likely to leave their jobs.

But ac­cord­ing to a new study, re­mote work­ers are do­ing bet­ter than many em­ploy­ers re­al­ize.

Researchers an­a­lyzed sur­vey data from 7,704 em­ploy­ees at a large health­care or­ga­ni­za­tion. One pat­tern stood out: Employees who worked fully re­motely re­ported the high­est lev­els of well-be­ing, while those who worked en­tirely on­site re­ported the low­est. The study also found lit­tle ev­i­dence that re­mote work­ers felt less con­nected to col­leagues or work­place cul­ture.

This sug­gests you let peo­ple work re­motely if they want to work re­motely,” said Ste­fanie Johnson, pro­fes­sor of or­ga­ni­za­tional lead­er­ship and in­for­ma­tion an­a­lyt­ics at the Leeds School of Business and co-au­thor of the study, pub­lished in July 2026 in the jour­nal Fron­tiers in Psychology. Taking away peo­ple’s choice of how they work is prob­a­bly not go­ing to help them in terms of their well-be­ing.”

Stefanie Johnson

As com­pa­nies con­tinue to de­bate re­mote work, many lead­ers worry that em­ploy­ees need to be in the of­fice to stay con­nected, work well to­gether and re­main com­mit­ted to their or­ga­ni­za­tion. Johnson said the re­search does­n’t al­ways sup­port those con­cerns.

The data from our study and oth­ers sug­gest re­mote and hy­brid work re­sult in bet­ter out­comes than re­turn-to-of­fice man­dates,” she said. Leaders are not mak­ing de­ci­sions based on data. I think they are just re­turn­ing to what they are used to.”

Rethinking re­mote work

Johnson, who co-au­thored the study with Alyssa Lezcano, Stephanie Zajac and Courtney Holladay of the MD Anderson Leadership Institute in Houston, said the re­sults sur­prised her. She thought em­ploy­ees who split their time be­tween home and the of­fice might have the best of both worlds.

I ac­tu­ally thought you would be hap­pi­est if you were part time out of the of­fice,” she said. Then every once in a while you get to see peo­ple, get that hu­man con­nec­tion.”

Instead, the data pointed in a dif­fer­ent di­rec­tion.

Among em­ploy­ees in the study, well-be­ing was high­est for fully re­mote work­ers, fol­lowed by hy­brid em­ploy­ees and then on­site work­ers.

The find­ings also cast doubt on one of the main ar­gu­ments for bring­ing em­ploy­ees back to the of­fice: that peo­ple need to be to­gether in per­son to feel con­nected.

Employees in the study were asked to de­scribe their or­ga­ni­za­tion’s cul­ture in a hand­ful of words. Remote work­ers were slightly more likely than their hy­brid and on­site peers to use words as­so­ci­ated with team­work, in­clu­sion and sup­port.

People who are re­mote ac­tu­ally said more things that in­di­cated they had more pos­i­tive con­nec­tions, even though they were re­mote,” Johnson said.

Still, Johnson said face-to-face in­ter­ac­tion can play an im­por­tant role in help­ing cowork­ers build re­la­tion­ships, es­pe­cially if they are just start­ing out in their ca­reers.

Remote works bet­ter af­ter you know peo­ple,” she said. So there is still a ben­e­fit of hav­ing some face time.”

Staying power

The re­searchers also ex­am­ined em­ployee turnover one year af­ter the sur­vey was com­pleted.

They found that em­ploy­ees with higher well-be­ing were less likely to leave the or­ga­ni­za­tion. Work lo­ca­tion it­self was not a strong di­rect pre­dic­tor of turnover. Instead, re­mote work was as­so­ci­ated with higher well-be­ing, which in turn was as­so­ci­ated with lower turnover.

It makes sense. If you have higher well-be­ing, you’re less likely to leave your job,” Johnson said.

Participants com­pleted the work­place sur­vey in 2023, and re­searchers com­pared those re­sponses with ac­tual turnover records one year later. Of the em­ploy­ees sur­veyed, roughly half worked on­site, with the re­main­der split be­tween hy­brid and fully re­mote arrange­ments.

Flexibility mat­ters

The study did not ex­plore why re­mote work­ers re­ported higher well-be­ing, but Johnson points to a grow­ing body of re­search on au­ton­omy and flex­i­bil­ity.

One ex­pla­na­tion is that re­mote work­ers have greater con­trol over their work setup and daily sched­ule, she said.

If you have con­trol over your en­vi­ron­ment, you tend to have more pos­i­tive out­comes,” she said.

Working from home can also elim­i­nate many every­day stres­sors.

Spending a lot of time in traf­fic is neg­a­tively re­lated to well-be­ing,” Johnson said. There are so many lit­tle stres­sors as­so­ci­ated with be­ing in the of­fice.”

Those stres­sors can in­clude ar­rang­ing child care, hir­ing help for pets or man­ag­ing the lo­gis­tics of get­ting to and from work, she said.

Johnson said the study points to a broader les­son for em­ploy­ers nav­i­gat­ing re­turn-to-of­fice de­bates. Rather than fo­cus­ing only on where em­ploy­ees work, or­ga­ni­za­tions may get bet­ter re­sults by in­vest­ing in em­ployee well-be­ing.

I think flex­i­bil­ity is here to stay,” she said.

gralhix #004

yassa9.github.io

gral­hix004 | Geolocating Random Islet Image Using Geometry & CUDA GPU Programming

16 – 08-2026 NOTE: this is a gen­uine hu­man work, didnt use LLM gen­er­a­tion.

16 – 08-2026

NOTE: this is a gen­uine hu­man work, didnt use LLM gen­er­a­tion.

I’m writ­ing this page as a writeup for this chal­lenge gral­hix 004 made by Sofia Santos | Gralhix.

You can view, clone and lo­cally try all code files and the fi­nal re­port with all in­struc­tions here at github.

You can view, clone and lo­cally try all code files and the fi­nal re­port with all in­struc­tions here at github.

Task brief­ing:

This is a photo of a re­sort lo­cated on an is­land.

a) What is the name of the re­sort? b) What are the co­or­di­nates of the is­land? c) In which car­di­nal di­rec­tion was the cam­era fac­ing when the photo was taken?

a) What is the name of the re­sort? b) What are the co­or­di­nates of the is­land? c) In which car­di­nal di­rec­tion was the cam­era fac­ing when the photo was taken?

In my opin­ion, solv­ing this chal­lenge with google lens is wast­ing a fun op­por­tu­nity, so de­cided to solve it with math and pro­gram­ming.

a] Metadata

Of course, first thing u look for is the meta­data. Ran that on my linux void:

> exiftool main.png

File Type  : WEBP (lossless) MIME Type  : im­age/​webp Image Width  : 736 Image Height  : 515

As ex­pected, noth­ing use­ful here. No EXIF, no GPS, no cam­era make or model.

b] Building the fin­ger­print

U can see from the img, there are 3 land­masses:

P0: the islet it­self,

P1: the right is­land,

P2: the left front is­land ( hav­ing moun­tain peak )

I couldnt make a cor­rect per­spec­tive model of bird­view of this im­age, as clearly the im­age is taken by a drone and cant es­ti­mate the el­e­va­tion at all (and not found in the meta­data).

So I had to es­ti­mate that by in­tu­ition, I just want the rel­a­tive dis­tances be­tween the 3 is­lands and an­gles of that tri­an­gle.

I built a small click GUI 01_triangle_gui.py that records pixel co­or­di­nates for each point in or­der and com­putes the tri­an­gle’s geom­e­try.

Since click­ing ex­act cen­ters by eye is­n’t per­fectly pre­cise, I added a ±20% tol­er­ance band around both val­ues when search­ing.

c] SEARCH

With the fin­ger­print locked in, the next step is check­ing every real land­mass on Earth against it !

I used OpenStreetMap’s split land poly­gon set as the dataset land-poly­gons-split-4326, full global coast­line vec­tors in WGS84 which has size of 882 MB.

I used OpenStreetMap’s split land poly­gon set as the dataset land-poly­gons-split-4326, full global coast­line vec­tors in WGS84 which has size of 882 MB.

I cre­ated heuris­tic fil­ters (all by just in­tu­ition and non tan­gi­ble proofs), spent days (yea full days) tweak­ing val­ues and tons of trial and er­ror 😭 un­till I got this work­ing fil­ters recipe.

01] Tropical lat­i­tude bound­ing box

$$ -30° \le lat­i­tude \le 30° $$

the islet in the photo reads as trop­i­cal, so I de­cided that any­thing out­side the trop­ics is thrown out im­me­di­ately, be­fore do­ing any ex­pen­sive geom­e­try work.

Exactly 141,131 land poly­gons sur­vive that band fil­ter.

Exactly 141,131 land poly­gons sur­vive that band fil­ter.

02] Local den­sity fil­ter

$$ N_{5\text{km}}(p) \le 10 $$

$ N_{5\text{km}}(p) $ counts how many other cen­troids fall within 5km of point (p). Cap is 10: if an islet has more than 10 neigh­bors that close, it’s sit­ting in a dense reef field, a crowded coast­line or a arch­i­pel­ago clut­ter, not a small iso­lated 3 – 4 is­land group like the photo shows.

This dropped can­di­dates down to 51,576.

This dropped can­di­dates down to 51,576.

03] Clustering

For every sur­viv­ing point, find every other point within 20km (heuristic, by eye from the im­age). If it has at least 2 neigh­bors that close (3 points to­tal), it’s a clus­ter. Points with no clus­ter of 3+ nearby are dropped, they can’t form a tri­an­gle at all.

tree = cK­DTree(f_­co­ords) neigh = tree.query_bal­l_­point( f_­co­ords, CLUSTER_RADIUS_KM / 111.0) clus­ters = set(tu­ple(sorted(n)) for n in neigh if len(n) >= 3)

$$ \left|\{q : \text{dist}(p,q) \le 20\,\text{km}\}\right| \ge 3 $$

That col­lapses down to 23,500 clus­ters.

That col­lapses down to 23,500 clus­ters.

04] Generating Triplets

For every clus­ter, every com­bi­na­tion of 3 points in­side it be­comes a can­di­date tri­an­gle. That’s $ C(n, 3) $, which ex­plodes fast for big clus­ters, for ex­am­ple: a clus­ter of 60 points al­ready gives 34,220 triples on its own. So each clus­ter gets capped at 60 points first, sam­pled by size, not ran­domly.

$$ \binom{n}{3} = \frac{n(n-1)(n-2)}{6} $$

def strat­i­fied_sam­ple(idx_arr, area_arr, cap): or­der = np.argsort(area_arr[idx_arr]) n_s­mall = cap // 3 n_large = cap // 3 n_mid = cap - n_s­mall - n_large mid_s­tart = max(0, (len(idx_arr) - n_large - n_mid) // 2) keep = np.unique(np.con­cate­nate([ or­der[:n_s­mall], or­der[-n_large:], or­der[mid_s­tart:mid_s­tart + n_mid], ])) re­turn idx_arr[keep]

def gen_­clus­ter_triples(idx_arr): lo­cal = np.ar­ray(list( iter­tools.com­bi­na­tions(range(len(idx_arr)), 3)), dtype=np.in­t64) re­turn idx_arr[lo­cal]

The sam­pling takes a third small is­lands, a third large, a third from the mid­dle of the size dis­tri­b­u­tion, in­stead of the full clus­ter or a ran­dom cut.

23,500 clus­ters pro­duce 80,690,777 triples to­tal !!

23,500 clus­ters pro­duce 80,690,777 triples to­tal !!

05] Matching, on the GPU

I gave every triple one CUDA thread. Each thread sorts its 3 points by land area to pick out P0 (smallest, the re­sort islet), then uses the wind­ing di­rec­tion of the other two to as­sign P1 and P2:

long long i = block­Idx.x * (long long)block­Dim.x + threa­dIdx.x; if (i >= n_triples) re­turn;

int pos[3] = {0, 1, 2}; for (int a1 = 1; a1 < 3; a1++) { int key = pos[a1]; dou­ble key­val = a[key]; int j = a1 – 1; while (j >= 0 && a[pos[j]] > key­val) { pos[j + 1] = pos[j]; j–; } pos[j + 1] = key; }

P1 vs P2 comes from a 2D cross prod­uct, no branch­ing on which clus­ter the triple came from, just the sign:

$$ \text{cross} = x_a y_b - x_b y_a $$ $$ P1 = \begin{cases} a & \text{cross} > 0 \\ b & \text{cross} \le 0 \end{cases} $$

Walk from P0 to a, then to b. If cross > 0, that’s a left turn (counterclockwise). If cross < 0, it’s a right turn (clockwise). It’s the same sign trick used to tell if 3 points curve one way or the other.

then an­gle at P0 and the dis­tance ra­tio, same for­mu­las as the fin­ger­print step, com­puted in­de­pen­dently by every thread:

$$ \theta_0 = \arccos\left(\frac{\vec{d_1} \cdot \vec{d_2}}{|\vec{d_1}||\vec{d_2}|}\right), \qquad r = \frac{|\vec{d_1}|}{|\vec{d_2}|} $$

A triple sur­vives if an­gle, ra­tio, P0′s size, the sep­a­ra­tion be­tween P0 and P1, and both side lengths all land in­side the fin­ger­print’s tol­er­ance win­dows. Threads that pass write their re­sult into a shared out­put ar­ray us­ing an atomic counter, so two threads fin­ish­ing at the same time never over­write each other:

if (hit) { un­signed long long slot = atom­i­cAdd(out­_­count, 1ULL); out­_p0[slot] = p0idx; out­_p1[slot] = p1idx; out­_p2[slot] = p2idx; }

Now printed in the CLI di­rectly from the ker­nel:

gpu: NVIDIA GeForce RTX 3050 (sm_86) vram used: 5169 MB ker­nel time: 204.1 ms

80.7 mil­lion triples go in, one thread each, in par­al­lel. 158,784 pass the mask.

80.7 mil­lion triples go in, one thread each, in par­al­lel. 158,784 pass the mask.

06] Dedup

Since same phys­i­cal triple can get hit by mul­ti­ple GPU threads if it be­longed to more than one over­lap­ping clus­ter, so raw matches get col­lapsed by iden­tity first:

seen = set() uniq = [] for i in range(len(p0_all)): key = (p0_all[i], p1_all[i], p2_all[i]) if key not in seen: seen.add(key) uniq.ap­pend(i)

8,915 unique triples af­ter dedup.

8,915 unique triples af­ter dedup.

07] The Open Rectangle

Every sur­viv­ing triple gets one more test: is the space next to it ac­tu­ally open wa­ter, like the photo shows ? A rec­tan­gle gets built along the P0→P1 edge, on whichever side P2 is not on, then checked against the land dataset for any­thing else sit­ting in­side it.

width = np.hy­pot(x1, y1) u = np.ar­ray([x1, y1]) / width v = np.ar­ray([-u[1], u[0]])

# p2 sits on the +v side by con­struc­tion, # so the check goes on -v length = 2 * width cor­ner­s_lo­cal = [ (0, 0), (x1, y1), (x1 - v[0]*length, y1 - v[1]*length), (-v[0]*length, -v[1]*length), ]

If any­thing other than the 3 can­di­date is­lands them­selves in­ter­sects that rec­tan­gle, the can­di­date is dropped. Land sit­ting there means it’s not the open, un­ob­structed wa­ter the photo ac­tu­ally shows.

8,915 unique triples down to 948.

8,915 unique triples down to 948.

and be­low is the map of places of the 948 can­di­dates.

d] Coral Cay Shape Check

In this stage, we look only at P0, the re­sort islet, and check whether its shape ac­tu­ally looks like a coral cay.

1] Compactness, how close to a cir­cle the shape is:

Polsby Popper Score: $$ PP = \frac{4\pi \cdot \text{area}}{\text{perimeter}^2} $$

def com­pact­ness(row): re­turn (4 * np.pi * row.area_km2) / (row.perim_km ** 2 + 1e-12)

1.0 is a per­fect cir­cle, lower means a more jagged or elon­gated out­line. Coral cays tend to be round from wave de­po­si­tion, so any­thing < 0.5 gets dropped.

2] Micro Cay Halo Check:

def mi­cro_­cay_­count(gdf, sin­dex, lon, lat): dist­s_km = nearby.geom­e­try.dis­tance(pt) * 111.0 mask = (dists_km > 0) & (dists_km <= HALO_KM) & (nearby[“area_km2”].values < MICRO_KM2) re­turn int(mask.sum())

We Count land frag­ments un­der 0.05 km² within 1.5km of P0 ( just heuris­tic ). Real reef sys­tems scat­ter tiny sand­bars around the main is­land, not just one iso­lated land­mass (I knew that with the hard­way 😭). So we need at least 1.

213/948 can­di­dates sur­vive both checks.

213/948 can­di­dates sur­vive both checks.

e] Oval Shape Check

Another geo­met­ric fil­ter on P0′s own poly­gon. Fits the min­i­mum ro­tated rec­tan­gle around it and mea­sures two ra­tios from that box.

def as­pec­t_and_­fill(geom): mrr = geom.min­i­mum_ro­tat­ed_rec­tan­gle co­ords = list(mrr.ex­te­rior.co­ords) s1 = math.hy­pot(co­ords[1][0] - co­ords[0][0], co­ords[1][1] - co­ords[0][1]) s2 = math.hy­pot(co­ords[2][0] - co­ords[1][0], co­ords[2][1] - co­ords[1][1]) long_­side, short­_­side = max(s1, s2), min(s1, s2) re­turn long_­side / short­_­side, geom.area / mrr.area

Aspect ra­tio is long side over short side of that box:

$$ \text{aspect} = \frac{\text{long side}}{\text{short side}} \in [1.05,\ 2.2] $$

Too close to 1.0 and it’s ba­si­cally a per­fect cir­cle, not the slightly elon­gated shape in the photo. Too high are shapes too much elon­gated more than 2:1.

To add this web app to your iOS home screen tap the share button and select "Add to the Home Screen".

10HN is also available as an iOS App

If you visit 10HN only rarely, check out the the best articles from the past week.

Visit pancik.com for more.