from brendan halpin

I’ve been thinking a lot recently about which albums I return to again and again as full albums. Since streaming has made it trivially easy to only listen to songs you like, I think many of us listen to playlists rather than albums. I do listen to albums I’ve bought on Bandcamp as full albums, but otherwise, I mostly listen to Sirius radio or playlists.

But there are some albums I like to listen to in their complete form. So I thought I’d share them with you not to show how cool I am (I mean, sure, that too) , but also because I’m always interested in music recommendations from real people, so maybe you will be too.

Caveat: I’m not representing this as the “best albums of all time” or anything like that because that’s entirely subjective, and also my affection for some of these albums is definitely colored by the associations I have with them. So your mileage may vary, but I’m confident there are no clunkers here.

I’m presenting them in chronological order by release date, and I’m stopping in 2012, mostly because I’m lazy and also I’m not sure which albums from the last 15 years I’ll still be listening to in 15 years.

1965- The Beatles, Rubber Soul

1966- The Beatles, Revolver

1967- The Velvet Underground, The Velvet Underground and Nico

1969-Creedence Clearwater Revival, Willy and the Poor Boys

1970- MC5, Back in the USA

1972- Donny Hathaway, Donny Hathaway Live

1975- Parliament, One Nation Under a Groove

1977- Ramones, Rocket to Russia

1978- Ramones, Road to Ruin

1978- Funkadelic, One Nation Under a Groove

1978- The Dictators, Bloodbrothers

1979- Graham Parker and the Rumour, Squeezing Out Sparks

1979- The Clash, The Clash (US Version. Yeah, I said it)

1979- Roky Erickson and the Aliens, The Evil One

1980- The Clash, London Calling

1980- Prince, Dirty Mind

1980- The Damned, The Black Album

1982- Utopia, Utopia

1982- X, Under the Big Black Sun

1984- Hüsker Dü, Zen Arcade

1984- Minutemen, Double Nickels on the Dime

1984- Ramones, Too Tough To Die

1984- The Go-Gos Talk Show

1985- The Velvet Underground, VU

1986- The Edge, From the Middle of Nowhere (Original Title: Johnny Cuba & The Edge)

1986- Human Zoo, Human Zoo

1986- Midnight Oil, Diesel and Dust

1986- Paul Simon, Graceland

1987- Prince, Sign O’ The Times

1987- John Mellencamp, The Lonesome Jubilee

1988- Billy Bragg, Workers Playtime

1994- Johny Cash, American Recordings

1995- Prince, The Gold Experience

1996- Belle and Sebastian, Tigermilk

1996- Belle and Sebastian If You’re Feeling Sinister

1997- Afro-Cuban All Stars, A Todo Cuba La Gusta

1998- Belle and Sebastian, The Boy With the Arab Strap

2002- Caesars, Love For the Streets

2002- Zombina and the Skeletones, Taste the Blood Of

2002- The Donnas, Spend the Night

2003- John Mellencamp, Trouble No More

2004- Hawaii Mud Bombers, Mondo Primo

2004- Loretta Lynn, Van Lear Rose

2004- Sahara Hotnights, Kiss & Tell

2007- Shonen Knife, Fun! Fun! Fun!

2008- Nada Surf, Lucky

2010- Harley Poe, Wretched, Filthy, Ugly.

2012- The Hives, Lex Hives

 
Read more... Discuss...

from Faucet Repair

27 July 2026

“The General” by Bernadette Mayer, from The Old Style Is Finding out Something about a Whole New Set of Possibilities (1966-70)

Later in secret Later in secret the general Bends to remove something To lean against a fresco. The rules which run Around the walls The walls of court Determine a course, Declare if he had not:

Sulphur and pitch, sulphur and lead, sulphur and gum mastic, sulphur and varnish, mixed with the husks of pine-kernels, sawdust, isinglass, shells of snails, husks of beans, and seed of myrtle.

From here any direction is shown. The woods must be razed — resumption of growth The market growing, profusion, the question To hold — to hold Parts or acts in the act of disintegrating wholly. A sign over the hull — the evening In a complex of other evenings Behind the intervening ledge, the general.

 
Read more...

from Attronarch's Athenaeum

Adventurers

Character Race Class Description
Alaric Human Paladin level 3 Big, doe eyed country boy with wavy blond hair and willingness to do the right thing. Paladin of Tyr.
Ambros Human Cleric level 7 Follower of Aniu, Lord of Time.
Drokh Human Monk level 3 A tall, lean human monk with piercing eyes, weathered skin, and a warrior’s poise—calm and charismatic, he speaks with purpose and strikes with precision, wielding spear, bow, and blade.
Heinrik Human Magic-user level 2 Muscular mage with short blonde hair and piercing blue eyes.
Ignaeus Elf Fighter level 4 / magic-user level 5 An arrogant and self-assured sellsword wandering Wilderlands to prove he can best anyone.
Jacob Vin Human Assassin level 3 Slick black hair, inconspicuous dress, youthful for his age, and of keen instincts.
Julius Human Ranger level 1 A short king covered in bushy hair and green moss.
Kenso San Human Fighter level 2 An arrogant and self-assured sellsword wandering Wilderlands to prove he can best anyone.
Kho Rimbo Human Magic-user level 3 A knife throwing wizard extraordinaire. Covered in ritual knife scars. Cuts himself whilst casting. Prone to being sarcastic.
Minako Konishi Human Monk level 3 Pretty Karakan with grace of a panther and shrewdness of a fox. Silk sash holds here loose trousers in place, while loose jacket rounds up her exotic look.
Syd Grundy Human Fighter level 3 Tall, middle aged and scruffy looking man of the wilderness.
Tam o' Shanter Human Cleric level 4 A boisterous wine-lover of Losborst on a Great Crusade of the Grape.
Thorinda Bung Human Monk level 3 She has blonde hair done up in a tight pony tail and wears light, loose suit.
Thorm Dwarf Dighter level 2 / thief level 3 Ashen hair, beard, and eyes. Left his own clan due to financial trouble.
Tosk Human Fighter level 1 Extremely large muscular man with pot belly; cagey about his intentions and past; seeking fortune.
Warmund Abendeurer Human Fighter level 2 A burly blonde barbarian; Wilbalt's older brother and the stronger of the two.
Wilbalt Abendeurer Human Fighter level 2 A burly blonde barbarian; Warmund's younger brother and a better swordsman of the two.

Gloomfrost 20th, Spiritday

It was noon. Last day of the last month of the year. Entire population of Ironburg, a mining thorp sitting at the northern border of Kingdom of Hara, crowded in the newly built longhouse.

Baron of Ironburg, a large, muscle-bound man called Sig of Dostrogoths, sat in his wooden throne. He was sullen and of ill mood. His muscles were tense. Next to him sat people he trusted most: Rupert Ironwill, a bishop of Tyr; Bertha of Dostrogoths, Sig's shadow; Vimaro, a vicar of Mitra; and his two trusted seers, Lamprecht and Daltz. Red Wizard Crus was given a special seat.

Across the baron, at the end of a long table, stood Ambros. He stood there, for he was brought here to hear his sentencing. He had submitted himself to fate; whatever it might bring. He had time to prepare. He had time to meditate. He had time to pray.

Ironwill stood up, and cleared his throat. Masses went quiet.

“We have gathered today, on this fine day, to share three proclamations from the Benevolent Wizard-King Klekess Racoba! First, we shall deal with the man standing before us, Ambros ap Mortain. By his own admission, Ambros is guilty of treason against the King, and the people!”

Ironwill went on and on. Ambros listened in silence. He and others had a moment to catch-up with Heinrik, whom had returned from Hara around midnight. “From what I understood, Ambros will get to live. Something will happen, but he will live. That is what Crus told me. Sig is unhappy about something, but I do not know what.”

“Ambros, by great mercy of our Wizard-King Klekess Racoba, you are exiled from the Kingdom of Hara! Anyone can kill you, facing no consequences! In fact, they would do our Kingdom a great favour!” Ironwill spoke loudly, each word uttered with great conviction and passion.

“Paladin of Tyr!” Ironwill turned to Alaric “It is only fitting you deliver justice!” A bowl of thick, black liquid was brought forth. Alaric was given a sharpened tusk. “Tattoo a mark of traitor upon the forehead of that animal over there.”

Alaric took both and went over to Ambros. “Forgive me.” he whispered, as he penetrated the skin of former High Priest of Forseti again, and again, and again. Blood and ink flew down the cleric's forehead, down his face, down his neck, and onto his chest.

“Men! Women! Children! Behold this animal before us! Yes, animal! Debased and rightsless, no better than a rabid dog!”

Loud coughs interrupted Ironwill. It was Old Crus.

“Oh, yes. Animal known as Ambros is now a slave to the Red Wizard Crus.”

Ambros spoke up “Ahem. How can I be both exiled and enslaved to Crus? I mean, Crus lives right here, in Ironburg?”

“Silence, cur!” Ironwill muttered “Chase him out! Chase him out like a rabid dog he is!” and to that the crowd booed Ambros, and threw stones, and hit him with clubs and sticks. Ambros attempted to maintain composure, and some semblance of dignity. Alas, his attempts failed them, but the scribe could not bear to write down the details.

Adventurers were mixed in with the crowd. Nearly twenty of them, ready to cause hell, and die for their friend should such fate befall them. But they stood in the silence of crowd cheering and chanting at the bloody spectacle.

Rupert continued speaking. There were two more proclamations for the king. Iron ore production must double by the summer. Barony was granted a coat of arms. Kho Rimbo slurred something along the lines of “ghhhlyy” while slobbering saliva and blood over himself. He too was treated no better than Ambros, having been sentenced to brank's bridle.

As evening came, Sig stood up and announced that a week-long Year's End celebration shall begin. This was welcomed with uproarious approval from all those present. Wilbalt and Warmund went hard on drinks, food, and games; Tosk kept up; Julius opted to focus on the food and games; Thorm, Ignaeus, Minako, tracked Ambros down and then hung out with him; Alaric orbited Sig to get to know the man better; Thorinda mopped a bit but then got down to party; Jacob spent time writing notes on specific cruelties of the region; Tam got pissed big; Kho hid in a hole and wept.

Thawmist 1st, Airday

Ambros learned the price of his life from Old Crus.

“I have no use of you as a slave. This was merely need to humiliate you further. You are free, I don't care for you being here. For my services I want just one thing. Yukanthur's spell book.”

Ambros communed with his god Aniu, the Lord of Time.

He prepared three questions.

He received five answers.

That is between him and his god.

Thawmist 2nd, Airday

A party of seven—Wilbalt, Tosk, Julius, Alaric, Ignaeus, Jacob Vim, and Tam—returned to the ruins of Castle Yukanthur. They did not return to seek what Ambros needed. No, they came back for the secret chamber full of stone jars filled with delightful treasure and deadly gas.

It took them a full day, but they managed to extract everything that was worth it: two thousand silver pieces, one thousand gold pieces, a jar filled to the top with spiced honey, a jar—jealously guarded by Tam—filled to the top with red wine, three vials filled with pus-like substance, and three golden necklaces adorned with gems.

Adventurers returned, with no losses, to Ironburg by noon of Thawmist 3rd, Earthday.

Thawmist 8th, Earthday

Immediately after returning, Tam began organising a huge house warming party. After all, adventurers' humble townhouse had just been built. Roughly three thousand square feet of home! Some were suspicious—will people be interested in more festivities after the biggest festival of the year?

“Leave it to the vicar of Losborst!”

Everyone was invited. And everyone showed up! Well, nearly everyone. Old Crus refused but sent a little gift via Heinrik “A single drop of this will make you drunk within seconds. No headache, no hangover. But only a single drop!” Ambros remained hiding in Crus's tower, much to the wizard's annoyance. Ignaeus kept him company. Kho Rimbo was hiding somewhere in the bushes around Ironburg.

The party was a total toss up. Everyone had amazing time. Heinrik took a drop of Crus's drink, by mixing it into his wine. Within moments he felt like he was cruising on people. Tam, seeing that, drank the whole vial, just like that. Losborst himself materialised next to him, and they continued to party like gods do. Alas, to others, Tam crumpled to the ground, soiling his finest toga.

Tosk and Thorm once more focused on mingling with Sig. That paid off as the dwarf began working on a potential deal with the baron.

Nobody died.

Adventures began dreaming of all the supplies they could procure from New Hara. They assembled a wishlist. Their bellies were full, house warm, and coffers full.

But the question remains—will their new home burn down to the ground as well? Or they have learned something from their past deeds that will allow them to create a different future for themselves?

Poster by Lord Jubalon Flux.

Discuss at Dragonsfoot forum.

#Wilderlands #SessionReport

 
Read more...

from PlantLab.ai | Blog

What You'll Build

A Node-RED flow that captures a photo on a schedule, sends it to PlantLab for diagnosis, and takes action based on the result. Push notifications, dashboard updates, MQTT messages to your controller, log lines into InfluxDB, or whatever combination you want. No Python. No YAML. Nodes and wires.

Setup runs about 25 minutes on a Node-RED instance that's already up. The cost is whatever camera you own plus PlantLab's free tier at 3 diagnoses a day. The output is a structured JSON result: 31 possible conditions, a growth stage, nutrient antagonism hypotheses, and confidence scores, all ready to feed into whatever comes next.

Node-RED suits growers who already have their tent wired up with visual flows. If you've got temp sensors piping into an InfluxDB dashboard, MQTT switches on a power strip, or a Telegram bot that announces fan speed changes, you already know the pattern. Plant health diagnosis is just another node in the chain.

Coming from Home Assistant? There's a tutorial for that too. Node-RED gives you more granular flow control and broader protocol support. HA gives you a cleaner device-and-entity model. Both work. Pick whichever one matches the rest of your setup.


Prerequisites

Before we start:

  • Node-RED running (Docker, Pi, bare metal, or the Home Assistant add-on – any of them works)
  • A camera that can deliver a JPEG – IP camera with snapshot URL, Frigate, ESP32-CAM, Wyze with RTSP bridge, Reolink, anything that responds to an HTTP GET with a JPEG or that you can shell out to ffmpeg for
  • A PlantLab account – sign up free at plantlab.ai, copy your API key from the dashboard
  • Optional but recommended: node-red-dashboard for a visual panel, node-red-contrib-image-tools if you want to resize photos before sending, an MQTT broker if your grow controllers talk MQTT

Camera tip: shoot the canopy from above or at a slight angle, with neutral light. Blurple grow lights throw the model off because everything comes out tinted purple. Either schedule the check during a lights-off window or use the camera's built-in flash. PlantLab wants to see actual leaf color, not a magenta smear.


Step 1: The Basic Flow

Here's the smallest flow that actually does something useful. Four nodes. Inject on a schedule, pull an image from the camera, POST to PlantLab, debug-log the result.

[inject: cron 08:00] -> [http request: GET camera.jpg] -> [http request: POST plantlab] -> [debug]

Open Node-RED, drag these four nodes in, and wire them together.

The inject node

  • Repeat: at a specific time, 08:00:00
  • Payload: empty (we only need the trigger)

The camera snapshot node (HTTP request)

  • Method: GET
  • URL: your camera's snapshot endpoint, e.g. http://192.168.1.50/snapshot.jpg or your Frigate http://frigate:5000/api/grow_tent/latest.jpg
  • Return: a binary buffer

If your camera needs auth, add a basic auth header. If it's RTSP-only, use an exec node running ffmpeg -i rtsp://... -frames:v 1 -f image2pipe - and pipe the stdout through.

The PlantLab request node (HTTP request)

  • Method: POST
  • URL: https://api.plantlab.ai/diagnose
  • Return: a parsed JSON object
  • Headers: set in the function node below (not in the HTTP request node's UI)

Before this node, drop in a small function node to wrap the binary image as multipart form data and attach the API key header:

const boundary = '----NodeRedBoundary' + Date.now();
const bodyStart = Buffer.from(
    `--${boundary}\r\n` +
    `Content-Disposition: form-data; name="image"; filename="plant.jpg"\r\n` +
    `Content-Type: image/jpeg\r\n\r\n`, 'utf8');
const bodyEnd = Buffer.from(`\r\n--${boundary}--\r\n`, 'utf8');

msg.headers = {
    'X-API-Key': 'YOUR_API_KEY',
    'Content-Type': `multipart/form-data; boundary=${boundary}`
};
msg.payload = Buffer.concat([bodyStart, msg.payload, bodyEnd]);
return msg;

Put your API key in a Node-RED env variable or credentials node instead of hardcoding it. I wrote it inline for clarity.

The debug node

Hook this up to see the full response. You'll get something like this:

{
  "request_id": "req_abc123",
  "schema_version": "1.1.0",
  "success": true,
  "is_cannabis": true,
  "cannabis_confidence": 0.95,
  "is_healthy": false,
  "health_confidence": 0.87,
  "growth_stage": "flowering",
  "growth_stage_confidence": 0.9,
  "conditions": [
    {
      "class_id": "calcium_deficiency",
      "display_name": "Calcium Deficiency",
      "confidence": 0.92
    }
  ],
  "pests": [],
  "mulders_hypotheses": [
    {
      "excess": "potassium_excess",
      "explains": ["calcium_deficiency"],
      "evidence": 0.92,
      "evidence_count": 1
    }
  ]
}

The response can also include diagnostic_confidence, safety_classification, uncertainty_factors, environmental_patterns, and progression_risks. You can ignore the ones you do not need.

One thing worth knowing: the response is trimmed by omission. On a clearly healthy plant, you will NOT see a conditions: [] array – the field is left out entirely. Same with pests and mulders_hypotheses. Always guard with payload.conditions && payload.conditions.length before indexing.

Deploy. Click the inject node's button once to run it manually. If the debug panel shows a response with success: true, the plumbing is done.


Step 2: Branch on the Result

Now it gets interesting. You want different things to happen depending on what the diagnosis came back with. Drop in a switch node right after the PlantLab response, three outputs:

  • Property: msg.payload.is_healthy
  • Output 1: equals false (problem detected)
  • Output 2: equals true (all good)
  • Output 3: otherwise (covers the case where the image is not cannabis – is_healthy is omitted)

Always wire the third branch. If you accidentally point the camera at the lens cap, the wall, or your cat, the API returns is_cannabis: false with is_healthy left undefined. A two-output switch drops those silently. The third output catches them so you can log or send a “check your camera” notification instead.

Most of the work lives on the false branch.

A second switch for confidence

Inside the problem branch, add another switch:

  • Property: msg.payload.conditions[0].confidence
  • Output 1: >= 0.75 (high confidence – alert)
  • Output 2: < 0.75 (marginal – log only)

Early-stage symptoms produce lower confidences. You don't want every 0.4 nitrogen-deficiency blip triggering a Telegram ping at 3 AM.


Step 3: Notifications

Telegram

If you have a Telegram bot set up, drop a telegram sender node on the high-confidence branch. Use a template node before it to format the message:

[ALERT] Plant issue detected

Condition: {{payload.conditions.0.class_id}}
Confidence: {{payload.conditions.0.confidence}}
Growth stage: {{payload.growth_stage}}

Mulder's hypothesis: {{payload.mulders_hypotheses.0.excess}}

Discord

Swap the Telegram node for node-red-contrib-discord-advanced and point it at a webhook. Same template works.

Home Assistant (via webhook)

If you run both HA and Node-RED, Node-RED can fire an HA webhook that triggers a mobile notification with the snapshot attached:

[http request POST: http://homeassistant:8123/api/webhook/plantlab_alert]

The webhook handler in HA does the actual notification. Useful if you already have notification channels, templates, and quiet hours configured over there.


Step 4: Close the Loop

This is where Node-RED pays for itself over a static dashboard. You can fire automations directly from the diagnosis.

Auto-dose Cal-Mag on calcium deficiency

Add a switch on the condition class:

  • Property: msg.payload.conditions[0].class_id
  • Output 1: equals calcium_deficiency

Then wire a change node to set the MQTT payload and publish to your dosing pump:

[mqtt out]
  topic: grow/pumps/calmag/set
  payload: ON

Then a delay node (5 seconds), then another MQTT message flipping it back OFF. Always notify yourself when a dosing automation fires. A false positive that dumps nutrients is a bad morning to wake up to.

[set pump ON] -> [delay 5s] -> [set pump OFF] -> [notify]

Ramp up fan speed on fungal detection

If the diagnosis returns powdery_mildew or similar with high confidence, push the fan speed up and drop target humidity in your environmental controller. Same pattern – switch on class_id, change node for the new setpoint, MQTT publish.

Log everything to InfluxDB

Regardless of what happened, log every diagnosis to a time-series database so you can build dashboards later. Drop an influxdb out node on the main line, before the switches. A function node preps the fields:

msg.payload = [{
    is_healthy: msg.payload.is_healthy ? 1 : 0,
    health_confidence: msg.payload.health_confidence,
    top_condition: msg.payload.conditions[0]?.class_id || 'none',
    top_confidence: msg.payload.conditions[0]?.confidence || 0,
    growth_stage: msg.payload.growth_stage
}];
return msg;

Now you have a Grafana dashboard of plant health over time. Symptoms drift slowly over days. Watching a confidence line trending up on one specific condition is more useful than catching the single moment it crosses 0.75.


Step 5: Dashboard

With node-red-dashboard installed, you get a web UI for free. A simple panel:

  • ui_template showing the latest snapshot
  • ui_text nodes for condition, confidence, growth stage
  • ui_gauge for overall health confidence
  • A manual ui_button wired back to the inject node so you can trigger a check on demand

Drop them all in a group called “Plant Health” and they render in a grid at /ui. Pretty enough for the tablet stuck to the kitchen wall.


Putting It Together

Complete Node-RED flow: three triggers fan into GET camera, wrap multipart, POST plantlab, then is_healthy switch routes to confidence, healthy, and not-cannabis branches; confidence routes further into Telegram, HA webhook, class_id switch for cal-mag pump and fan up, plus log-only

The whole flow described in prose:

Three triggers feed the same pipeline. Two scheduled injects (morning, evening) and one manual dashboard button. Each trigger pulls a camera snapshot, wraps it as multipart, POSTs to PlantLab, and parses the JSON response. From there the signal fans out. One branch writes every result to InfluxDB so you can graph drift over time. The other branch hits switch: is_healthy. The true side logs and stops. The false side continues into a confidence switch. Low-confidence detections only log. High-confidence detections fan out into Telegram, an HA webhook, and a switch: class_id that routes specific conditions into downstream automations (cal-mag pump on calcium deficiency, fan bump on mildew, whatever you wire up).

One diagnosis call in. One structured log entry. Two scheduled checks, one manual button. Zero or more notifications, zero or more automations fired. All from five node types: inject, http request, function, switch, change.


Troubleshooting

Problem Likely cause Fix
is_cannabis: false Camera angle, blurple lights, lens cap Adjust position, use white light or flash
401 Unauthorized Missing or wrong API key Check the X-API-Key header in the wrap-multipart function node
503 Service Unavailable on upload Image over 10 MB hits the upstream limit before reaching the API Resize with node-red-contrib-image-tools before the POST. Target under 8 MB to be safe.
429 Rate Limit More than 3 requests/day or 90/month on free tier Space out injects or upgrade to Pro (500/month)
Request hangs Camera or API unreachable Add a catch node on the flow; set HTTP request timeout to 15s
conditions field absent Plant is healthy, or the image isn't cannabis, so no condition was detected Expected. Guard with payload.conditions && payload.conditions.length – the field is omitted entirely on healthy plants, not returned as an empty array.

Add a catch node wired to your alerting. When the flow itself breaks, you hear about it. Two weeks of silent green checkmarks on a flow that quietly stopped running is worse than a flow that never ran at all.


Why Node-RED Instead of Writing This in Python

A few reasons.

Protocols come free. MQTT, HTTP, WebSockets, Modbus, CoAP, serial, SNMP – all one node away. Your dosing pump speaks MQTT, your camera speaks RTSP, your logger speaks InfluxDB line protocol, alerts go to Telegram or Discord. Doing that same glue in Python means pulling in four libraries and maintaining them yourself.

Visual flows match the mental model. “When the camera sees X, send Y to the pump and notify me on Z” is already a diagram in your head. Node-RED lets you lay it out on a canvas instead of translating between code and back.

You can change a running flow. Deploy swaps it in place, no restart. Handy for grow-room automation where you tune thresholds based on what the plants actually end up doing, not what you assumed they would.

If you prefer code, the same flow is about 40 lines of Python with requests, paho-mqtt, and a cron entry. Use whichever fits.


What the API Actually Gives You

The response has every field you need for automation. The ones that matter most:

Field Type Notes
is_healthy bool The simplest switch
is_cannabis bool Guard against pointing the camera at the wrong thing
conditions array Sorted by confidence, top result first
conditions[].class_id string One of 31 possible values
conditions[].confidence float 0.0 to 1.0, maps empirically to real correctness
growth_stage string seedling / vegetative / flowering
mulders_hypotheses array Nutrient antagonism explanations

mulders_hypotheses is the block most growers end up leaning on. If the diagnosis is calcium deficiency but the hypothesis says the real cause is potassium excess, adding more cal-mag makes things worse. That's the kind of tip that saves you a week of chasing the wrong fix. More on nutrient antagonism here.


FAQ

Do I need a dedicated PlantLab Node-RED node?

Not yet. The standard http request node handles it fine. A node-red-contrib-plantlab package is on the roadmap and will collapse the multipart wrapping into one node. Until then, the function snippet above does the job.

How does this compare to the Home Assistant integration?

HA gives you entities and a config flow. Node-RED gives you wires and broader protocol reach. If your setup is already Node-RED-centric, don't force HA into the middle just for this. If you have both, let Node-RED handle the flow logic and use HA webhooks for the notifications that already work well there.

Rate limits?

Free tier: 3 per day, 90 per month. Pro: 500 per month. A home grow with morning and evening checks fits the free tier with a spare daily slot. If you're monitoring multiple tents or running high-frequency checks during flower, Pro is probably what you want.

Does 0.80 confidence really mean 80% certain?

Close to it. Over our evaluation data, a score of 0.80 lines up empirically with about 80% correctness. Worth knowing when you set automation thresholds – a 0.60 threshold fires more often than a 0.80 one, at a predictable cost in false positives. More on how we diagnose here.

Does it handle images from plant apps?

The endpoint accepts any JPEG or PNG. Grow-log app, phone gallery, file drop on a NAS – same POST, same result.


PlantLab detects 31 cannabis conditions – nutrient deficiencies, pests, diseases, environmental stress – at 99%+ accuracy in 18ms. Structured JSON out, works with anything that speaks HTTP. Free tier at plantlab.ai. HA integration is open source at github.com/plantlab-ai/home-assistant-plantlab.


 
Read more...

from Roscoe's Quick Notes

TX_Rangers

Texas Rangers vs Tampa Bay Rays.

Tuesday's MLB Game of Choice has my Rangers playing the Rays. This game is scheduled to start at 5:40 PM CDT. As I usually do, I'll follow the game's score and stats in real time via MLB's Gameday Service where we can also find links to the radio-call of the game provided by announcers of either team we choose.

And the adventure continues.

 
Read more...

from zbridges

ADHD and the lies we tell ourselves

I recently finished a book, 12 principles of raising a child with ADHD. In general I don’t like this science-based self-help genre but I am entering a phase where I am truly out of my depth. My son is moving into middle school, I’ve got a newborn on the way, and I cannot drop the ball on supporting my son or myself during this time. It’s more important for me to model good coping skills than it is for me to do anything else.

This book was kind of a wash for me. Living with pretty severe adhd as an adult has made it so my coping skills are not terrible. It did put into words the experience of a child who does not understand what is occurring inside their head though, which I appreciate.

 
Read more... Discuss...

from Lastige Gevallen in de Rede

Van Voorbijgaande Aard in Natuurlijke Omstandigheden ; De Aapropos

Vandaag ben ik, Pre Centator, in een wel heel bijzonder deel van Smægmå, het verregende woud waarin alleen soorten leven die heel erg graag nat zijn, worden en zo willen worden gehouden, het moet zo nat mogelijk zijn maar dan weer geen oceaan of stuwmeer zijn, voor mij en mijn medeklinkers en dergelijke medewerkers is het er vrij lastig vertoeven, het wifi netwerk is niet al te best, alleen in hoge bomen zie je wel eens een streepje hoop op bereik.

Wij zij hier samen opgehoopt voor een reportage over een bijzondere apensoort, de Aapropos, in gewone schrift taal de Post Scriptum aap of de Voorikhetvergeet Aap. Deze Aapropos komt uit de Aapostrofe über soort die uiteindelijk uitkomt onder de stapel waar wij ook bij horen, de (gecultiveerde, aangeklede, geknipt en geschoren, met een mobiele telefoon omhopsende) mensapen type. De Homo Zakiëns, ex Ludens, Leuk weetje toch.

Aaproposeurs en Aapropositie, de namen van het mannetje en het vrouwtje, leven hoog en laag in de bomen van het verregende woud, ze besteden hun tijd voornamelijk met elkaar in de rede vallen, tijdens de vele debatten op de takken van enorme lof houwende bomen geworteld in die glibberig natte aardbodem, de stammen eigenlijk altijd omring door rustig of wild kabbelend water. Er is nooit een Aapropos die als laatste klanken uitstoot, een debat gaat voor zover ik weet door en door tot in het oneindige van het alsmaar nieuwe verdiepingen aanbouwende heelal.

De Aaproposeur klinkt zwaarder dan de Aapropositie, ze doen zich voor als hoger in rang, om dat beeld te bestendigen zitten ze op hogere ranken van de geloofde bomen tijdens het oneindige gebabbel. Het is voor een buitenstaander onmogelijk om te weten waarover ze zo druk speculeren aangezien ze daarmee nooit stoppen, behalve heel even voor voortplanten en voeden, handelingen blijkbaar alleen nodig voor meer speculaties en altijd genoeg deelnemers aan het gesprek in de verre, verre toekomst. U begrijpt wel dat het niet moeilijk was deze soort te ontdekken, ze deden er zelfs alles aan om het te worden. Gezien, gehoord, te worden ervaren door alle andere verregende wouden bewoners, het merendeel vertrokken naar posities heel ergens elders, zo ver_mogelijk bij de ellendig rumoerige Aapropos vandaan, helaas voor hen en ons heeft deze soort bedroevig weinig vijanden.

Door onfortuinlijke toevalligheden verdwenen hun grootste vijanden, de hoop van de overige verregende inwoners is daarom gevestigd op geruchten, wanhoop eigenlijk, die geruchten zijn ook waarom wij hier zijn toeschouwen op film en in items, Het lijkt er op dat deze snel naar onze droger gelegen delen van Smægmå oprukkende soort zichzelf steeds harder en harder tegenspreekt, tot dood bloedens toe op elkaars klankkast inhoud ingaat ten bate van het eigen geluid, nou ja, lawaai, herrie, kabaal.

Wij, de mensen van de redactie van Van Voorbijgaande Aard in Natuurlijke Omstandigheden, zijn er op uit om beelden van dergelijke in geweld uitlopende communicatie pogingen te filmen, allemaal voor de wetenschap en natuurlijk voor het vermaak. De bron van onze omroepleider is entertainment tot aan de dood en daar voorbij bezorgen aan de fans van entertainment en entertainers overal op Smægmå, waar zouden we zijn zonder al die miljoenen vermakelijke bijdragen via alle juist daarvoor ontwikkelde methodes en technieken, onze AI.

We dachten dat geruchten zoals deze loos waren en waren er derhalve van uitgegaan dat we ze in scene zouden moeten zetten of met list en bedrog moesten veroorzaken binnen de Aapropos stam maar tot onze eigen verbazing bleek het gezegde waar. Deze soort kon elkaars beeld en geluid niet verdragen, ze gunden elkaar geen klinker, geen teken van lezen, helemaal niks en zichzelf juist alle rumoer op hun immer toenemend terrein. Hun klankkleur boven al het andere, met name boven dat van de andere lagere ranken toeten en blazende Aaproposeur en hun Aaproposities. Sterker nog het in serene stilte schieten van deze bijzonder afschuwelijke, schrikwekkende reportage vonden we het, weliswaar heel even, beter om de beelden van elkaar met hand en tand bestrijdende apen niet aan u te tonen, maar aangezien we u toch moeten entertainen met de werkelijk wonderlijke wereld van moeder natuur in samenwerking met moeder taal in vader land Smægmå ziet u nu toch voor u de eindeloze strijd tussen de Aaproposeurs, Aapropositie aan alle kanten tegen de andere Aaproposeurs en Aapropodities, een bloedige strijd over iets van hoorbaar belang wat ons echter is ontgaan maar des ondanks er duidelijk toe doet dat ziet u nu, twee uur lang en daarna een week in de uitzend loop, en daarna altijd oproepbaar vanuit de cloud, we hebben ook speciaal voor u bijna overal vaste webcams in het verregende woud opgehangen zodat u op ieder moment van de dag kunt zien hoe de strijd verloopt en wie wint en wie het pleit heeft verloren. Als dat niet leuk is dan weten wij het ook niet meer.

Tot de volgende keer maar weer bij Van Voorbijgaande Aard in Natuurlijke Omstandigheden.

 
Lees verder...

from Life according to 𝑺igi

Rule #5 : a tilt of perception the world remains what it is; the self tilts

On the value of a signpost

You asked me about the origin of Sigi's Rule #4. I recall that I told you a related story, but omitted the birth of the notion itself. Forgive me. I was trying to protect you. I realize now there is no protection available. I should have explained earlier the circumstances in which the idea first occurred to me.

I was walking through unfamiliar country when I came to a signpost that was clearly not sitting comfortably in its role along side the fork in the footpath. But trusting it, I followed the direction it indicated. It was a, more than gentle, ascent but the beauty of the landscape drew me onwards. I paused occasionally to gaze upon the scenery or stoop to admire the collision of colours among a display of wild flowers. So I cannot say that I soon realised it was leading me entirely the wrong way. Rather that I had been so pre-occupied with being in the landscape that I walked a considerable way, to the summit of a hill. It was only when I reached the summit, and found no obvious way onward, that I became annoyed.

And yet, as I my eyes danced from field to cottage from road to river, tracing the whole valley now arranged below me, the annoyance must have melted away, for I was no longer aware of it. Only the delight at being there. I continued along in a make-shift direction to regain the valley further along in my journey and reflected. Had the sign been obedient to its office, I would have remained on the lower road and never seen the landscape before me. The mistake revealed a truth.

Years later, passing that way again, and now wholly familiar with the route, I noticed the old sign still leaning at its disproportionate angle, but obscured from casual view by a perfectly accurate modern directional system. Visitors could now reach their destination efficiently and without confusion. Yet nobody ever climbed the hill. Nobody saw the valley. The truth of the sign concealed a mistake: navigation had become confused with arrival. I concluded:

A mistake may fail in relation to its object while succeeding in relation to an horizon.

A truth may succeed in relation to its object while failing in relation to an horizon.

I rather value this lesson. Not every wrong turn is an error, and not every correct direction reveals where one is. And I, I have never been entirely certain whether the discomfort of the sign, as I originally encountered it, revealed a deeper history. ✒️ Sigi

 
Read more...

from An Open Letter

I’ve started a powerlifting program again and I’m so excited! Also, there’s this one girl at the gym that is really pretty, but looks absolutely terrifying like i’ve started a powerlifting program again and I’m so excited! Also, there’s this one girl at the gym that is really pretty, but looks absolutely terrifying like an insane death glare. At the end of our gym session J and I went to the posing room and she was there, and I asked her for advice on something and she was such an incredibly bubbly, friendly person. We exchanged Instagram’s and I don’t know. I think it’s just insane how much things can change if I give them the chance.

 
Read more...

from eivindtraedal

De mange forsøkene fra profilerte Høyre-politikere på å klistre venstresida til islamisme fremstår som en klønete forsøk på å «speile» argumenter folk på høyresida blir møtt med. Men dette kommer aldri til å bli en symmetrisk diskusjon, av en enkel grunn: høyreekstremisme er en ekstrem ytterkant av høyrevridd ideologi, men islamisme er ikke en ekstrem ytterkant av hverken sosialisme eller sosialdemokrati.

Vi finner ytterst få, om noen, eksempler på at profilerte politikere på venstresida lefler med islamisme eller adopterer argumenter fra radikal islam. Det ville være absurd. Radikalt islam er jo en reaksjonær ultra-konservativ ideologi. Men vi finner mange eksempler på at folk på høyresida lefler med høyreradikalt tankegods.

PST trekker fram “ekstrem islamisme” og høyreekstremisme som de to store truslene på terrorfronten i 2026. Bare en av disse to truslene har en berøringsflate med det etablerte norske partilandskapet. Om man trekker høyrevridde standpunkter, f.eks. mot innvandring og flerkultur, til et ekstremt ytterpunkt, kan du havne i høyreekstremisme. Men du trekker venstrevridde standpunkter til sitt ekstreme ytterpunkt, havner du ikke i radikalt islam.

For de på høyresida som skulle være forvirra over hvorfor det er mest snakk om å “ta avstand” fra høyreradikalt tankegods og mindre om å ta avstand fra ekstrem islamisme, så finner du også svaret her. Det er en fjollete øvelse å be noen om å ta avstand til noe de aldri har har vært nær, eller nærmet seg. Avstanden mellom ekstrem islamisme og norsk venstreside er stor og konstant. Du kan like gjerne be oss ta avstand til Bouvetøya.

Men å sørge for at det er tilstrekkelig avstand mellom høyresida og deres radikale og ekstreme ytterfløy, krever åpenbart stor og kontinuerlig innsats. De siste årene har jo høyresida kollapset til autoritære og rasistiske partier i mange vestlige land, noe som truer både menneskerettigheter, demokrati og rettsstat. Deres ideologiske svakhet er en trussel mot oss alle.

Hvis islamistiske partier tok over vestlige land med venstresidas støtte i land etter land, så kunne vi snakket om behov for avstandtagen, men sånt foregår jo bare i fiksjonen, i rasistiske feberfantasier som den norske kulturmiddelklassen koser seg med.

Ironisk nok er den eneste måten høyresida kan forsøke å «speile» denne debatten på, nettopp å omfavne høyreradikale konspirasjonsteorier. Ideen om at islam og innvandrere egentlig bare er et verktøy for venstresida, som «importerer» mennesker for å bytte ut befolkninga, også kalt «den store utskiftningen», var sentral i Breiviks tankeverden.

Om man adopterer denne store løgnen kan man skape en skrudd kobling mellom venstresida og radikalt islam. Men da har man blitt en høyreradikal konspirasjonsteoretiker på veien.

Derfor føles det siste døgns desperate forsøk på å slå politisk mynt på pride-terroren i Berlin fra høyresiden både dumt og destruktivt.

 
Read more... Discuss...

from Notes I Won’t Reread

Good morning. Against everyone’s best interests, im back. while i thought this would’ve taken longer, it didnt. which is. unfortunate for us all, but anyway. im back now. sitting here like i never left. life really does have a strange sense of humor. so do i. the twenty-fifth, the twenty-sixth, the twenty-seventh. waiting. most people arent very good at that, a lot of waiting. not so exciting, i know. but anyway, the little situation is over. i would explain, but i have a feeling people enjoy making up their own vesions more. humans do love that. give the half a picture and suddenly they’re experts. always, always very confident about things they’re usually wrong at. its almost impressive, considering being wrong is probably the one thing they practice every day. As for my little guest. a very determined person. ill give them that. the confidence they had was impressive while their decisions were questionable, their attempt at changing the story was almost charming, almost. Everyone likes to believe they’re the exception, the one person who will somehow be different from everyone else, and thats very ambitious. As how the trip back home was peaceful, and nobody was around asking questions they didnt actually want answered. finally, some silence is what i deserve after all that. now its early in the morning i would say, and im home, back to writing again. disappearing for a while and returning just to complain about people is my version of a hobby. could be worse. i could have a normal one. but anyway, im sure someone will try to make sense of this. Good luck with that.

Now im back to the important things, writing nonsense, complaining about everything around me, and pretending that my terrible opinions are somehow valuable observations. Until the next inconvenience decides to introduce itself, i suppose you’ll have to survive my usual collection of thoughts. How unfortunate for you.

Sincerely, Until i get bored again.

 
Read more... Discuss...

from SmarterArticles

The listing could belong to any mid-market software company. There is a tiered pricing table. There is a changelog documenting the latest release, with bug fixes and a note about improved output quality. There is a refund policy, a customer-support handle that answers within hours, and testimonials from satisfied users describing exactly how much money the product helped them make. There is even a free trial. The only detail that does not fit the template of a legitimate software-as-a-service business is the product itself. What is being sold, on a subscription that costs less than a premium music streaming plan, is the ability to defraud strangers at industrial scale, personalised to each victim's job, location, and financial behaviour, generated on demand by a large language model whose safety training has been deliberately stripped away.

This is the shape of a shift that cybersecurity researchers have taken to calling Fraud-as-a-Service, and it is the subject of a July 2026 investigation by the Times of India and the specialist Indian cybercrime outlet The420.in. The investigation documented a fully commercialised ecosystem of criminal AI tools, sold through Telegram channels and dark-web marketplaces under names such as FraudGPT, WormGPT, EvilGPT, and DarkBard, packaged with the exact conveniences that made legitimate cloud software so successful: version updates, service tiers, live support, and an interface requiring no technical skill. The story is not that fraud has become possible. Fraud has always been possible. The story is that the practical barrier to committing sophisticated, personalised, AI-assisted fraud has collapsed to the price of a subscription, and that the people who built the supply chain have organised it to look, feel, and bill exactly like the legitimate technology industry it preys upon.

The important questions follow from that collapse rather than from the mere existence of the tools. If anyone with a payment method and an internet connection can now rent a fraud capability that a few years ago required real expertise and criminal connections, who ends up bearing the cost of that democratisation? And what structural changes to the technical, regulatory, or financial infrastructure would actually interrupt the supply chain, rather than repeating the tired official advice that potential victims should simply be more careful?

A Product History Written on Telegram

The commercial lineage of these tools is unusually well documented for a criminal industry, because it was advertised in public. In July 2023, a threat actor operating under the handle CanadianKingpin12 began promoting FraudGPT across underground forums and Telegram, marketing it as an all-in-one offensive toolkit for writing malicious code, building scam pages, and composing convincing fraudulent messages with, in the seller's phrasing, no boundaries. Netenrich analysts, who first surfaced the listing, reported a price of around 200 dollars per month or roughly 1,700 dollars per year, and a seller claiming several thousand confirmed sales. The same actor advertised a small family of related products, including DarkBERT and DarkBard, the latter a criminal counterpart to Google's Bard chatbot. WormGPT, its better-known sibling, had emerged slightly earlier and was built on an open-source model fine-tuned for business email compromise, the category of attack in which a fraudster impersonates a supplier or executive to redirect a payment.

What distinguishes the 2026 picture from that 2023 debut is maturation. The early tools were crude, expensive, and frequently scams in their own right, with sellers vanishing after taking a subscriber's cryptocurrency. The ecosystem The420.in describes has professionalised. It now offers custom dashboards from which a subscriber can orchestrate campaigns, ingesting parsed consumer datasets and generating thousands of unique phishing emails, texts, and voice-call scripts tailored to a target's profession, geography, and recent transactions. Capability that once had to be built in-house is now rented by the month, maintained by someone else, and delivered through an interface simple enough that the buyer need not understand what happens underneath. The criminal underground did not invent this model. It copied it, faithfully, down to the customer-support ethos.

The pricing reported in the investigation reflects that copying. A basic subscription is said to start at around 20 dollars per month and to include AI-generated phishing templates personalised to the victim, while a tier at around 160 dollars per month is described as bundling deepfake tools capable of defeating the identity checks banks and exchanges use to onboard customers. These figures should be read as reporting from the investigation rather than as independently audited prices, and they sit alongside the higher, historically documented FraudGPT rates. The tools are getting cheaper, easier, and more capable at once, precisely the trajectory that turned software from a specialist craft into a mass-market utility.

What Twenty Dollars Actually Buys

To treat a twenty-dollar phishing subscription as a novelty of the dark web that produces slightly better spam badly understates what has changed, and the misunderstanding matters because it shapes the defensive advice issued in response.

The old defensive folklore held that phishing could be spotted by its tells: clumsy grammar, generic greetings, obvious mismatches between a message and the organisation it claimed to represent. Those tells were artefacts of scale. A fraudster writing in a second language and blasting one template to a hundred thousand addresses produced text a careful reader could catch. Generative models dissolve that trade-off between scale and quality. KnowBe4, examining phishing emails detected between September 2024 and February 2025, found that 82.6 per cent contained AI-generated content, a jump the firm put at more than fifty per cent year on year; its April 2026 research put the figure at 86 per cent. The movement between those two readings is itself evidence of a share still climbing towards saturation rather than one that spiked and settled. The same research finds AI-written lures achieving markedly higher engagement than their human-written predecessors, with native-level grammar, appropriate register, and cultural context on demand. The advice to look for bad spelling is now advice to look for a weakness the attacker has already engineered away.

Personalisation is the second and more consequential capability. A message that references a target's actual employer, job title, city, and a plausible recent transaction is not a marginal improvement on generic spam; it is a different weapon, one that historically required either a skilled operator or a manual research effort that did not scale. The subscription model automates that research and folds it into the generation step, so that each of ten thousand recipients receives a lure calibrated to them individually. The most alarming tier reaches into the machinery of identity itself. Deepfake tools that fabricate a convincing identity-verification video are marketed as a way to defeat the know-your-customer checks meant to stop criminals opening accounts. That turns fraud from an act of persuasion into an act of impersonation at the infrastructure level, letting an attacker manufacture the accounts through which stolen money is received and laundered. The barrier that collapsed was never only the barrier to writing a convincing email. It was the barrier to industrialising every stage of the fraud pipeline, from the first message to the mule account that receives the proceeds.

The Evidence That This Is Cause, Not Coincidence

It is one thing to observe that criminal AI tools exist and that fraud is rising, and quite another to establish that the former is scaling the latter; sceptics reasonably ask whether the tools are hype layered over crime that would have happened anyway. The most rigorous attempt to answer that question is an academic paper catalogued on the arXiv preprint server under the identifier 2505.23733 and titled Unintentional Consequences: Generative AI Use for Cybercrime, whose authors, Truong Jack Luu and Binny M. Samuel, treat the public release of ChatGPT at the end of November 2022 as a natural experiment.

The researchers took two large real-world abuse datasets: more than 464 million malicious IP-address reports from AbuseIPDB, and 281,115 cryptocurrency scam reports from Chainabuse. They then treated the arrival of a powerful, publicly accessible generative model as a shock, and estimated the counterfactual trajectory of reported abuse had the model not been released. They found statistically significant increases in reported malicious activity after the shock across both datasets, including an immediate rise of over 1.12 million weekly malicious IP reports and roughly 722 additional weekly cryptocurrency scam reports, with sustained rather than transient growth in the crypto-scam series. The paper's conceptual contribution is a mechanism rather than a mere correlation. Generative AI, the authors argue, both creates new action possibilities for offenders and magnifies pre-existing malicious intent, by lowering the expertise required and raising the efficiency of each attack. Commoditisation does not create new criminals from nothing so much as it removes the friction that previously kept marginal offenders out and capped the output of committed ones.

Set against the market data, the mechanism becomes legible. Chainalysis, whose annual crypto-crime reports are among the most cited in the field, found that cryptocurrency scams received at least 14 billion dollars on-chain in 2025, up sharply from prior years, and projected the final figure could exceed 17 billion as more illicit addresses are identified. Crucially, the firm reported that scams with on-chain links to AI service providers generated on average about 3.2 million dollars per operation, roughly four and a half times more than scams without such links, and that the average scam payment more than tripled year on year. Europol's Internet Organised Crime Threat Assessment for 2026, published in April under the subtitle The evolving threat landscape: how encryption, proxies and AI are expanding cybercrime, reached a complementary conclusion in plainer language. Cybercriminals no longer need technical skills to succeed, because crime-as-a-service platforms supply everything from stolen data to step-by-step fraud tutorials. What the current edition adds is a measure of tempo: a widening velocity gap between law enforcement and offenders who use AI to automate attacks, personalise scams, and compress the time needed to launch an operation. Europol's word for the shift is industrialisation, and it notes that the dark web's marketplaces and forums have shown remarkable resilience despite sustained enforcement pressure. The commoditisation is not a projection. It is being measured.

The Country Where the Bill Arrived First

If the abstraction of a global fraud supply chain needs a concrete ledger, India provides one, which is why the original investigation is Indian. The country's Ministry of Home Affairs reported that cybercrime cases rose roughly 24 per cent in 2025, with reported losses of about 22,495 crore rupees, roughly 2.7 billion dollars, spread across more than 28 lakh, or 2.8 million, complaints. Investment-related frauds dominated, accounting for around 76 per cent of the total financial loss, with fake trading applications, Ponzi structures, crypto traps, and messaging-group schemes on Telegram and WhatsApp draining accounts within days.

India is an instructive case precisely because it built, faster than almost anywhere, the two conditions that AI-enabled fraud exploits. The first is instant, irrevocable payment. The Unified Payments Interface, the real-time rails that made digital payments ubiquitous across Indian daily life, moves money in seconds, without the settlement delay that elsewhere occasionally gives a defrauded victim or an alert bank a window to intervene. The second is a vast population newly brought online, transacting in dozens of languages, for whom the old visual tells of a scam were never reliable guides in the first place. Personalised, fluent, native-language lures generated by a subscription tool are not a marginal threat in that environment; they are a precision instrument aimed at its softest point. The Indian Cyber Crime Coordination Centre has leaned on the countermeasure available to it, assembling a registry of suspected criminal identifiers shared with banks; lenders contributed millions of suspect identifiers and mule-account flags, helping block fraudulent transactions worth thousands of crore. That is meaningful defensive work. It is also, revealingly, downstream work, aimed at catching the money after the fraud has already been manufactured, because the manufacturing happens on infrastructure that sits well outside any single national regulator's reach.

Where the Losses Actually Land

Who bears the cost of this democratisation has, until recently, had an uncomfortable default answer: the victim, alone. The prevailing model in most jurisdictions treated an authorised push payment, one the account holder was tricked into approving themselves, as the customer's responsibility, on the reasoning that the bank had followed instructions. The fraud, in this framing, was a personal misfortune, and the official response was educational. Be vigilant. Verify before you pay. Hang up and call back.

That default is regressive in a specific and under-examined way. When the cost of a systemic failure is assigned to whoever happened to be standing where it struck, the burden falls hardest on those least able to model the threat, and the data bears this out. The United States Federal Bureau of Investigation's Internet Crime Complaint Center recorded almost 21 billion dollars in reported losses for 2025, a 26 per cent rise on the previous year, across 1,008,597 complaints, the first time the centre has passed a million in a single year. Investment fraud, much of it involving cryptocurrency, remained the largest single loss category at 8.65 billion dollars. It is the distribution beneath those totals that makes the point. People aged sixty and over filed 201,266 complaints and lost 7.7 billion dollars, more than any other age group, their losses up around 59 per cent on 2024 against a 37 per cent rise in their complaint count, which is what happens when each attempt is better aimed rather than merely more numerous. That cohort filed a fifth of all complaints and absorbed 37 per cent of all losses, averaging 38,501 dollars each against an all-ages average of 20,699. The 2025 report also introduced AI-related as a formal crime descriptor for the first time, logging over 22,000 complaints and nearly 900 million dollars in losses. The pattern is the industrialisation thesis made human, and the bureau has now begun to measure it directly. When personalised, fluent, emotionally calibrated fraud can be produced for pennies and aimed at millions, the people it reaches are not a representative cross-section who failed a vigilance test. They are disproportionately the old, the isolated, the financially anxious, and the newly connected, selected because the tooling makes selecting them cheap.

Telling that population to be more careful is not merely inadequate; it is an implicit policy choice about where to place the cost. It leaves the loss with the person who has the least capacity to prevent it and the least ability to absorb it, while asking nothing of the parties that operate the infrastructure through which the fraud flows: the model providers whose systems were bent to the task, the platforms hosting the marketplaces, the payment rails moving the money, and the exchanges converting it into something untraceable. The current answer was never neutral. It was a liability regime that happened to spare the enablers, and it is that regime, rather than the credulity of victims, that the structural interventions worth discussing are designed to rewrite.

Making the Enabler Pay

The most instructive experiment in shifting that liability is British, and it has now been evaluated. On 7 October 2024, the United Kingdom became the first country to impose a mandatory reimbursement requirement for authorised push payment fraud. Under rules set by the Payment Systems Regulator, banks and payment firms must reimburse most victims of APP scams, up to a limit of 85,000 pounds, with the cost split evenly between the institution that sent the payment and the one that received it. By making the receiving bank liable for half of every reimbursement, that fifty-fifty split creates a direct financial incentive for institutions to police the mule accounts through which fraud proceeds are collected, a part of the chain that previously bore almost no consequence for its role.

The logic is the ordinary economics of externalities. When the cost of fraud sits entirely with victims, every other party in the chain has an incentive to shift the risk onward and invest as little as possible in stopping it. Reassign that cost to the institutions best placed to detect and interrupt the flow, and they suddenly have a reason to build the controls they had long treated as optional. The predictable industry objection, that mandatory reimbursement invites opportunistic claims and could even subsidise fraud, has to be managed through carve-outs for first-party fraud and gross negligence.

Until this month, that reasoning had to be taken largely on trust. On 1 July 2026 the Payment Systems Regulator published an independent evaluation of the scheme's first year, and its findings are the empirical payoff for the argument. The policy was estimated to have cut APP fraud losses by 73 million pounds a year and to have reduced the number of APP scams by nearly 35,000, with losses sent over Faster Payments falling around 21 per cent following implementation. Of the money lost to APP scams and claimed back from a payment firm, 88 per cent was returned to victims, against 66 per cent in the equivalent period of 2023/24. Overall reimbursement rates rose from 54 to 65 per cent; for claims within the policy's scope, firms now reimburse 97 per cent, settling around 84 per cent of claims within five days and 97 per cent within 35 days. The predicted surge in opportunistic claiming did not materialise in the first year's evidence. That matters most, because it distinguishes relocating a cost from reducing one: liability moved onto the enablers did not shuffle the bill around the system, it produced measurably less fraud, which is what should happen when the party best placed to prevent something finally becomes the party that pays. The regime continues under new management, HM Treasury's April 2026 package consolidating the Payment Systems Regulator into the Financial Conduct Authority.

That reimbursement mandate did not arrive alone, and its companion measure illustrates how liability and technical control reinforce one another. Confirmation of Payee, the account-name-checking service Britain required its largest banks to adopt from 2020, now covers well over ninety-nine per cent of Faster Payments and CHAPS transactions after successive expansions, according to the regulator. It verifies, before a payment is sent, that the name on the destination account matches the name the payer believes they are paying, closing off a category of impersonation on which many scams depend. On its own, a name check is easily circumvented by a determined criminal. Paired with a reimbursement rule that gives banks a reason to act on the signals it produces, it becomes part of a system in which the enablers, rather than the victims, carry the cost of failure and therefore have a reason to prevent it.

Choking the Money at the Off-Ramp

Liability rules interrupt the fraud where it touches the regulated banking system. A great deal of it, however, is designed precisely to avoid that system, routing proceeds through cryptocurrency, and especially through stablecoins, the dollar-pegged tokens that have become the preferred settlement layer of online crime. Chainalysis has reported that stablecoins now account for the majority of illicit on-chain value, which makes the mechanisms for controlling them a second, distinct chokepoint in the supply chain, and one with a surprising property: some stablecoins can be frozen at the point of issuance.

The clearest demonstration is the T3 Financial Crime Unit, a partnership launched in September 2024 between the stablecoin issuer Tether, the TRON blockchain network, and the blockchain-analytics firm TRM Labs. Because Tether can freeze its own tokens at the issuer level, a flagged wallet can be immobilised on-chain, in a way that has no equivalent in the cash economy. The unit has frozen more than 450 million dollars in illicit crypto since its launch, a figure Tether reconfirmed in May 2026, working with law enforcement across 23 jurisdictions and, in some cases, executing freezes within 24 hours of a request; it intercepted 43.9 per cent more illicit proceeds in 2025 than in the year before. The Financial Action Task Force, which sets global anti-money-laundering standards, has cited the arrangement as a model of public-private disruption. The same capability that privacy advocates rightly find troubling, a private issuer able to freeze funds on demand, is also the single most effective lever yet demonstrated for stopping fraud proceeds mid-flight.

The more durable structural intervention sits at the conversion points, the on-ramps and off-ramps where crypto meets conventional money. Fraud proceeds are only useful once converted into spendable currency, and that conversion overwhelmingly happens at exchanges, which are increasingly regulated financial institutions subject to know-your-customer and anti-money-laundering obligations. Rigorously enforced identity checks at those chokepoints do more to interrupt the supply chain than any amount of consumer education, because they attack the economics of the enterprise: fraud that cannot be cashed out is fraud that does not pay. This is why the deepfake KYC-bypass tier matters so much. Criminals are investing in defeating identity verification precisely because it is one of the few controls that genuinely threatens their business model, and that investment is itself confirmation that the chokepoint works.

The Fight Over the Model Layer

Upstream of the money sits the capability itself, the model that writes the lure and fabricates the verification video, and this is where interventions are least mature and most contested. The uncomfortable fact is that the tools sold under names such as WormGPT are frequently not exotic bespoke systems but ordinary open or leaked models with their safety training removed, wrapped in a friendly interface. That makes the model layer a genuine point of leverage and a genuinely hard problem at once.

For the major commercial providers, the relevant control is the robustness of guardrails against jailbreaking, the practice of coaxing a model into producing content its policies forbid. Every serious frontier developer now invests heavily in refusal training and adversarial testing, and the effectiveness of that work determines whether a criminal can simply use a mainstream model rather than a specialist criminal one. But guardrails on hosted models do nothing about the parallel ecosystem of open-weight models that can be downloaded, fine-tuned, and stripped of safety behaviour on a subscriber's own hardware, outside any provider's control. That is the unresolved tension at the centre of AI governance: the same openness that democratises beneficial capability also democratises the criminal kind, and no purely technical fix reconciles the two.

The intervention with the most regulatory momentum targets output rather than the model, through provenance. The Coalition for Content Provenance and Authenticity, an open standard backed by Adobe, Microsoft, the BBC, and others, attaches cryptographically signed metadata to a media file, recording who created it, with what tools, and whether AI was involved, a tamper-evident record known as Content Credentials. The European Union has given the approach legal teeth. Under Article 50 of its AI Act, whose transparency obligations become applicable from 2 August 2026, deployers who use AI to create deepfakes must disclose that the content is artificially generated, and the Commission's draft Code of Practice explicitly points to C2PA-style marking as the mechanism. That date survived a deregulatory round. The Digital Omnibus on AI, adopted by the European Parliament on 16 June 2026 and by the Council on 29 June, postponed the Act's high-risk obligations, pushing Annex III to 2 December 2027 and Annex I to 2 August 2028, but left the Article 50 transparency duties on their original timetable. The one exception is narrow: the watermarking and machine-readable-marking requirement under Article 50(2) applies from 2 December 2026 for systems already on the market at 2 August 2026. Deepfake disclosure and provenance marking, in other words, were among the few duties judged too important to delay.

The limitations are equally clear. Provenance is a voluntary declaration that a criminal will simply decline to make, watermarks can be degraded, and social platforms routinely strip metadata on upload. A provenance standard does not stop a fraudster generating a fake KYC video. What it does, if adoption becomes widespread, is invert the default, allowing verification systems to treat unsigned or unverifiable media with suspicion rather than credulity, which raises the cost and lowers the yield of synthetic impersonation. That is a supply-chain intervention, aimed at the value the tool produces rather than at scolding the person it targets.

The Platform That Blinked

Between the model and the money sits distribution, and for the Fraud-as-a-Service economy the channel of choice has been Telegram, whose encrypted messaging, large public channels, and long-standing reluctance to moderate made it an ideal marketplace. What happened to that channel is the clearest illustration that platform behaviour is a policy variable rather than a fixed feature of the internet.

In August 2024, French authorities arrested Telegram's co-founder Pavel Durov at an airport near Paris and subsequently indicted him on charges that included complicity in the distribution of illegal content and in organised criminal activity conducted through the platform, on the theory that its refusal to cooperate had made it a haven for fraud and worse. The investigation remains open as of July 2026, with no trial date set, Durov questioned for a fourth time this month and still rejecting the charges. Whatever the eventual legal outcome, the operational effect was immediate. Within weeks, Telegram revised its policy to state that it would hand over users' IP addresses and phone numbers to authorities in response to valid legal requests, extending cooperation from the narrow category of terrorism to fraud and other cybercrime. Reporting on the platform's transparency data showed fulfilled law-enforcement requests rising steeply in the months that followed. A platform that had positioned non-cooperation as a principle discovered, under sufficient legal pressure on an individual, that cooperation was possible after all.

The marketplaces on which criminal tools are sold are not forces of nature; they are operated by identifiable entities that respond to incentives, and the incentives can be changed. Coordinated takedowns of dark-web markets impose real if temporary costs, fragmenting communities and eroding the trust on which any marketplace depends. Europol's finding that those marketplaces have nonetheless proved remarkably resilient is the honest qualifier: the costs are real, and they are also absorbed. Sustained legal pressure on the platforms that knowingly host criminal commerce, and on the intermediaries that process payments for them, attacks the distribution layer of the supply chain directly. None of this eliminates the underground. It raises the friction, and friction, restored to a system that has spent a decade removing it, is precisely the point.

Interrupting a Supply Chain Rather Than Scolding Its Victims

Assemble the parts and a picture emerges very different from the individualised, be-careful framing that has dominated the public response to fraud. What the Times of India investigation described is not a wave of cleverer criminals but a supply chain, with distinct and separable stages: a model layer that manufactures the capability, a distribution layer that sells it, a targeting layer that finds and personalises the victims, and a settlement layer that collects and launders the proceeds. Each stage has a chokepoint. Each chokepoint has at least one demonstrated intervention. And every one of those interventions places the cost of prevention on an enabler with the leverage to act, rather than on a victim with none.

Seen this way, the choice a society faces is not between accepting fraud and achieving the impossible task of making millions of individuals immune to personalised deception. It is a choice about where in the chain to concentrate pressure. The British reimbursement mandate, with a first-year evaluation now behind it, demonstrates that liability can be relocated onto financial institutions, that they respond by building controls, and that the fraud itself measurably falls as a result. The T3 freezing mechanism and exchange-level identity checks demonstrate that the settlement layer can be squeezed, which is why criminals are paying to defeat it. The EU AI Act's provenance requirements demonstrate that the output of the tools can be made costlier to weaponise. The pressure applied to Telegram demonstrates that the distribution layer bends when the legal cost of hosting crime rises high enough. None of these is sufficient alone. Fraud will migrate to whichever stage is left unguarded, which is why a piecemeal, single-lever response fails and why the interventions have to be understood as a system answering a system.

The deeper point is one about honesty in assigning cost. For as long as the losses from AI-enabled fraud are treated as the private misfortune of the people unlucky enough to be targeted, the enablers face no bill and therefore build no defences, and the externality flows downhill to the old, the isolated, and the newly connected. The technologies that could interrupt the supply chain already exist and are, in places, already working. What has been missing is the decision to make the parties who profit from the infrastructure carry the cost of its abuse, rather than leaving that cost with whoever happened to open the message. A subscription that turns anyone into a fraudster is a market signal. It says the friction that once protected people has been engineered out, deliberately and for profit. Restoring that friction, at the model, the marketplace, the payment rail, and the off-ramp, is the work. Advising the target to be more careful is what a society does instead of the work.

References and Sources

  1. The420.in, “Renting the Exploits: How Fraud-as-a-Service Platforms Turned Digital Crime Into a Subscription Business,” July 2026. https://the420.in/fraud-as-a-service-cybercrime-subscription-business-ai-phishing/
  2. The420.in, “Fraud at the Speed of UPI: How AI Is Supercharging India's Cybercrime Boom,” 2026. https://the420.in/ai-fraud-real-time-digital-payments-india-cybercrime/
  3. Netenrich / SecureOps, “FraudGPT: The Villain Avatar of ChatGPT,” 2023. https://www.secureops.com/blog/ai-attacks-fraudgpt
  4. Dark Reading, “'FraudGPT' Malicious Chatbot Now for Sale on Dark Web,” 2023. https://www.darkreading.com/threat-intelligence/fraudgpt-malicious-chatbot-for-sale-dark-web
  5. Huntress, “What Is WormGPT?” Cybersecurity 101. https://www.huntress.com/cybersecurity-101/topic/wormgpt
  6. KnowBe4, “KnowBe4 Research Finds 86% of Phishing Attacks are AI Driven,” April 2026. https://www.knowbe4.com/press/knowbe4-research-finds-86-of-phishing-attacks-are-ai-driven
  7. Truong Jack Luu and Binny M. Samuel, “Unintentional Consequences: Generative AI Use for Cybercrime,” arXiv preprint 2505.23733, revised December 2025. https://arxiv.org/abs/2505.23733
  8. Chainalysis, “2026 Crypto Crime Report: Scams,” 2026. https://www.chainalysis.com/blog/crypto-scams-2026/
  9. Infosecurity Magazine, “Impersonation Fraud Drives Record $17bn in Crypto Losses,” 2026. https://www.infosecurity-magazine.com/news/impersonation-fraud-record-17bn/
  10. Europol, “Internet Organised Crime Threat Assessment (IOCTA) 2026 — The evolving threat landscape: how encryption, proxies and AI are expanding cybercrime,” 28 April 2026. https://www.europol.europa.eu/cms/sites/default/files/documents/IOCTA-2026.pdf
  11. The Print, “Cybercrime saw 24% spike in 2025. Indians lost Rs 22,495 crore, mainly in investment scams,” 2026. https://theprint.in/india/cybercrime-saw-24-spike-in-2025-indians-lost-rs-22495-crore-mainly-in-investment-scams/2859930/
  12. Insights on India, “Cybercrime in India 2025: 24% Spike, ₹22,495 Crore Lost,” 21 February 2026. https://www.insightsonindia.com/2026/02/21/cybercrime-in-india/
  13. Federal Bureau of Investigation, “Cryptocurrency and AI Scams Bilk Americans of Billions” (2025 IC3 Annual Report), April 2026. https://www.fbi.gov/news/press-releases/cryptocurrency-and-ai-scams-bilk-americans-of-billions
  14. Internet Crime Complaint Center, “2025 IC3 Annual Report” (PDF). https://www.ic3.gov/AnnualReport/Reports/2025_IC3Report.pdf
  15. Payment Systems Regulator, “Consolidated policy statement: APP scams reimbursement requirement (PS25/5),” May 2025. https://www.psr.org.uk/media/rhelv4op/ps25-5-app-scams-reimbursement-consolidated-policy-statement-may-2025.pdf
  16. Payment Systems Regulator, “One year on: Impact of APP reimbursement on victims,” 1 July 2026. https://www.psr.org.uk/news-and-updates/latest-news/news/one-year-on-impact-of-app-reimbursement-on-victims/
  17. A&O Shearman, “The UK's Authorised Push Payment (APP) Fraud Reimbursement Scheme.” https://www.aoshearman.com/en/insights/ao-shearman-on-fintech-and-digital-assets/the-uks-authorised-push-payment-app-fraud-reimbursement-scheme
  18. Payment Systems Regulator, “Anti-fraud tool Confirmation of Payee expanded to hundreds of more firms.” https://www.psr.org.uk/news-and-updates/latest-news/news/anti-fraud-tool-confirmation-of-payee-expanded-to-hundreds-of-more-firms/
  19. TRM Labs, “T3 Financial Crime Unit: A Model for Public-private Disruption in the Age of Stablecoins.” https://www.trmlabs.com/resources/blog/t3-financial-crime-unit-a-model-for-public-private-disruption-in-the-age-of-stablecoins
  20. Tether, “$450 Million Frozen And Counting: T3 Financial Crime Unit Continues Global Crackdown on Illicit Crypto Flows.” https://tether.io/news/450-million-frozen-and-counting-t3-financial-crime-unit-continues-global-crackdown-on-illicit-crypto-flows/
  21. European Union, “Article 50: Transparency Obligations for Providers and Deployers of Certain AI Systems,” EU AI Act. https://artificialintelligenceact.eu/article/50/
  22. Greenberg Traurig LLP, “Deepfakes, Chatbots, AI-Generated Text: European Commission Details Transparency Obligations Under the AI Act,” June 2026. https://www.gtlaw.com/en/insights/2026/6/deepfakes-chatbots-ai-generated-text-european-commission-details-transparency-obligations-under-the-ai-act
  23. Coalition for Content Provenance and Authenticity, “C2PA and Content Credentials Explainer 2.2,” 22 April 2025. https://spec.c2pa.org/specifications/specifications/2.2/explainer/_attachments/Explainer.pdf
  24. Wikipedia, “Arrest and indictment of Pavel Durov,” 2024. https://en.wikipedia.org/wiki/Arrest_and_indictment_of_Pavel_Durov
  25. Dark Reading, “Sharing of Telegram User Data Surges After CEO Arrest,” 2025. https://www.darkreading.com/cybersecurity-operations/sharing-telegram-user-data-surged-after-ceo-arrest

Tim Green

Tim Green UK-based Systems Theorist & Independent Technology Writer

Tim explores the intersections of artificial intelligence, decentralised cognition, and posthuman ethics. His work, published at smarterarticles.co.uk, challenges dominant narratives of technological progress while proposing interdisciplinary frameworks for collective intelligence and digital stewardship.

His writing has been featured on Ground News and shared by independent researchers across both academic and technological communities.

ORCID: 0009-0002-0156-9795 Email: tim@smarterarticles.co.uk

Listen to the free weekly SmarterArticles Podcast

 
Read more... Discuss...

from librasun.scorpiomoon

Taking my time with you

The memory of you is still so vivid, clinging to me like warmth on skin. Your body feels so incredibly soft beneath my hands, contrasting with that raw, sharp trace of gasoline in the air. I can still taste you, every slow, deliberate movement lingering as my tongue circles your nipples, taking my time with you. Every touch is magnified, every breath is heavy, and the sensual charge between us feels impossibly real. I carry the electric heat of you with me long after we part.

 
Read more...

from librasun.scorpiomoon

Why do I keep going back to Valdez

When I look at Valdez, I see the place where my heart woke up after so long. The first time I came here, I was anxious and insecure, chasing happiness with a drink and feeling the unspoken pull toward someone who would become so deeply special to me. Back then, my friend Alan, a pro ski guide here, told me how he used to chase happiness with alcohol until sobriety finally brought him real peace. Now, standing among these massive, breathtaking peaks completely clean, everything feels so much more real. Loving this person without the fog of alcohol isn't about hiding anymore; it's about being fully present for every deep, raw emotion.

​I keep wanting to go back because Valdez is where I get to test my wings. It's the place where my old, anxious self surrendered, and now I want to experience every inch of it with my eyes wide open and a clear mind. The mountains are bigger, my heart is wider, and the air just feels different when you aren't running from yourself.

Going back isn't about chasing a ghost or repeating the past, it's about standing in the place that once overwhelmed me, completely grounded, and claiming the real, beautiful life I'm building.

 
Read more...

from She Learns Spanish

Querido diario,

Hoy es lunes, el 27 de junio de 2026. Son las 2:15 de la mañana y sé que debo estar dormida, pero ya no puedo. El verano entero lo pasó igual. No tengo un horario de sueño, pero necesito uno en este punto de mi vida. No me gusta sentirme cansada, agotada y aburrida. No tengo la palabra para “dull”, pero cuando escribí la palabra en inglés se tradujo a “aburrida”.

Bueno, necesito un horario fijo en el que pueda despertarme, levantarme, trabajar y acostarme a la misma hora todos los días laborales. Es lo que necesito, pero no es lo que alcanzaré porque los hábitos que he estado desarrollando son muy distintos y arraigados. No, no es imposible quitarlos.

Tengo una mente que nunca deja de pensar. En este punto no estoy segura de si ya puedo cambiar el hecho. Verdaderamente, no creo que ya quiera cambiar este. Soy yo, ¿sí? Bueno, esta entrada probablemente no tiene sentido y está bien. ¡Buenas noches, mundo!

 
Read more...

from Roscoe's Story

In Summary: * A quiet Monday winds down. I stuck to the one chore that I've relegated to Mondays, doing my personal laundry. And having that chore completed now, I allow myself a certain amount of satisfaction.

The Texas Rangers winning their MLB game this afternoon against the Seattle Mariners was satisfying, too. The Rangers' next three games, all against the Tampa Bay Rays, have early start times and that will make scheduling my chores easy for the week ahead. Nice.

Prayers, etc.: * I have a daily prayer regimen I try to follow throughout the day from early morning, as soon as I roll out of bed, until head hits pillow at night.

Health Metrics: * bw= 229.83 lbs. * bp= 132/77 (65)

Exercise: * morning stretches, balance exercises, kegel pelvic floor exercises, half squats, calf raises, wall push-ups, BP breathing exercises, pilates

Diet: * 05:10 – 1 banana * 06:05 – pan du sol * 07:25 – 1 ham and cheese sandwich * 09:10 – fried chicken * 15:20 – peanut butter, fresh apple slices, saltine crackers * 16:00 – dish of ice cream

Activities, Chores, etc.: * 04:00 – listen to local news talk radio * 04:50 – bank accounts activity monitored. * 05:20 – read, write, pray, follow news reports from various sources, surf the socials, nap * 08:30 – started my weekly laundry * 08:55 – place grocery delivery order * 12:15 – follow news reports from various sources, surf the socials while folding laundry * 12:45 – tuned into 105.3 The Fan, DFW's #1 Sports Station, ahead of this afternoon's Rangers vs Mariners MLB game. I plan to stay here for the radio-call of the game. * 16:05 – The Rangers win this game, 7 to 3, and win this 4-game series, 3 games to 1. * 17:00 – watching The 45-47 Revelation: Derek Johnson on Declassification, PEADs, and the End of the Deep State

Chess: * 13:19- moved in all pending CC games

 
Read more...

Join the writers on Write.as.

Start writing or create a blog