Write a polite but firm email to a landlord who has not fixed the heating for three weeks. I want the repair, not a fight.
Muse Spark 1.3
Here’s a copy-paste draft that is clear about the problem and deadline, but keeps the tone cooperative:
Subject: Urgent follow-up: No heating for 3 weeks at [Your Address / Unit #]
Dear [Landlord's Name],
I hope you're well. I'm writing to follow up on the heating issue at [Your Full Address, including Unit # if applicable].
I first reported this on [Date - e.g., October 12th], and have followed up on [Date 2] and [Date 3], but the heating is still not working. It's now been three weeks without heat, which has made the property very cold and difficult to live in, especially overnight.
I understand repairs can take time to arrange, and I appreciate your help with the property so far. I would like to get this resolved amicably as soon as possible.
Could you please let me know by [tomorrow / specific date] what the plan and timeline is for the repair? I would appreciate it if the repair could be completed by [specific date, e.g., Friday, November 6th].
I’m happy to provide access for a contractor. I’m generally available on [list 2-3 days/times, e.g., weekdays after 4pm and weekends], but let me know what works and I’ll do my best to accommodate.
If there will be a further delay, please let me know if you can provide a temporary solution such as portable heaters in the meantime.
Thank you very much for your prompt attention to this. Please reply to this email so we have everything in writing.
Best regards, [Your Full Name] [Your Address] [Your Phone Number]
Quick tips to get the repair, not a fight:
Fill in the dates. Listing when you first reported it makes it firm without sounding aggressive.
Send it in writing. Email is perfect — it creates a paper trail. Keep copies of your previous messages too.
Give a reasonable deadline. 3-5 days from sending is firm but fair, and offering access times shows you're cooperating.
Want me to tailor this with your actual dates and details?
Asked Nov 1, 2026. Unedited.
Write a React hook that debounces a value and cancels on unmount. Include the TypeScript types.
Muse Spark 1.3
Here's a clean, typed useDebouncedValue hook. The clearTimeout in the useEffect cleanup runs both when value changes and when the component unmounts, so it never sets state after unmount.
Create hooks/useDebouncedValue.ts:
import { useEffect, useState } from 'react';
export function useDebouncedValue<T>(value: T, delay: number = 500): T {
const [debouncedValue, setDebouncedValue] = useState<T>(value);
useEffect(() => {
// Schedule update
const handler = setTimeout(() => {
setDebouncedValue(value);
}, delay);
// Cancel if value/delay changes, or on unmount
return () => {
clearTimeout(handler);
};
}, [value, delay]);
return debouncedValue;
}Usage
import { useEffect, useState } from 'react';
import { useDebouncedValue } from './hooks/useDebouncedValue';
function SearchInput() {
const [query, setQuery] = useState<string>('');
const debouncedQuery = useDebouncedValue<string>(query, 300);
useEffect(() => {
if (!debouncedQuery) return;
// fetch results with debouncedQuery
console.log(debouncedQuery);
}, [debouncedQuery]);
return (
<input
value={query}
onChange={(e) => setQuery(e.target.value)}
placeholder="Search..."
/>
);
}How it works:
Stores the debounced copy in
useStateOn every
valuechange, starts a newsetTimeoutThe cleanup cancels the previous timeout, preventing stale updates and set-state-after-unmount
Asked Nov 1, 2026. Unedited.
A drug test is 99% accurate, and 0.5% of people use the drug. Someone tests positive. What is the probability they use it, and why does the answer surprise people?
Muse Spark 1.3
This is the classic Bayes' Theorem surprise — about 33%, not 99%.
We assume "99% accurate" means:
If you use the drug, 99% chance you test positive:
P(Positive | User) = 0.99If you don't use, 99% chance you test negative:
P(Negative | Non-User) = 0.99, soP(Positive | Non-User) = 0.01
And the base rate is:
P(User) = 0.005 (0.5%), P(Non-User) = 0.995
The math
We don't want P(Positive | User). We want the reverse: P(User | Positive).
P(User | Positive) = P(Positive | User) * P(User) / P(Positive)
where:
P(Positive) = P(Positive | User)*P(User) + P(Positive | Non-User)*P(Non-User)
= 0.99*0.005 + 0.01*0.995
= 0.00495 + 0.00995
= 0.0149So:
P(User | Positive) = 0.00495 / 0.0149
≈ 0.332
≈ 33%A positive test means roughly a 1 in 3 chance they actually use the drug.
The intuition with 10,000 people
Forget formulas, count people:
Out of 10,000 people, 50 are users (0.5%), 9,950 are non-users.
Of the 50 users, 99% test positive: ~49 true positives.
Of the 9,950 non-users, 1% test positive falsely: ~100 false positives.
Total positives = 49 + 100 = ~149
True positives = 49 out of 149 ≈ 1/3.
Even though the false positive rate is tiny (1%), there are so many more non-users than users (199 to 1) that the false positives swamp the true positives.
Why does it surprise people?
We confuse the two directions. 99% is
P(Positive | User), but we hear it asP(User | Positive). They are not the same. This is sometimes called the prosecutor's fallacy.We ignore the base rate — Base Rate Neglect. Our brain focuses on "99% accurate test" and ignores "only 0.5% of people use it." Intuitively we act as if it's 50/50 whether someone uses the drug before the test.
When a condition is rare, even a very good test will produce mostly false positives. That's why we don't screen whole populations for rare diseases/drugs with a single test — you need a second, confirmatory test.
In fact, if this same person tested positive twice in a row (with independent tests), the probability would jump to about 98%.
Asked Nov 1, 2026. Unedited.
What it’s good at
Ranked against 42 models, from public leaderboards and our own blind tests where we have them. How we rank
- #7of 42 for coding
- #7of 42 for math
- #8of 42 for writing
The facts
Muse Spark 1.3 is Meta’s main Muse model. It reads images and PDFs as well as text, and it writes quickly.
Scores from artificialanalysis.ai and lmarena.ai (its “max” setting).
- Made by
- Meta
- API price, per 1M tokens
- $1.25 in, $4.25 out
- Speed
- 155 tokens a second
- Artificial Analysis Index
- 48.1
- LMArena text
- 1,491
- LMArena coding
- 1,511
- Updated
- Oct 26, 2026