231 points bigwheels 12 hours ago 107 comments
pavo-etc 10 hours ago | parent
tristanj 10 hours ago | parent
1) Move half the boxes to another room.
2) Listen for a beep and determine which room the beep comes from.
3) Take the boxes in that room and split them in half again.
4) Repeat until one box is left.
ARandomerDude 10 hours ago | parent
Alternatively, no.
entropie 9 hours ago | parent
aizk 9 hours ago | parent
tonyarkles 8 hours ago | parent
mauvehaus 8 hours ago | parent
I also feel like ordering the moves by lightest box first is reasonable as a real-world optimization.
Spare_account 2 hours ago | parent
kelseyfrog 8 hours ago | parent
peri-cl 8 hours ago | parent
(Out of curiosity: I think "physical binary search" is more properly O(n^{1/3} log(n)), or maybe O(n^{1/2} log(n)). Since physical objects have sizes, and moving things (or moving between things) takes time proportional to distance).
akoboldfrying 7 hours ago | parent
EDIT: My earlier analysis was wrong (it assumed you never move the beeping item after the initial halving), but the conclusion was right for a different reason: Each time you move items, you move half as many as you did last time. You initially move n/2 items, and the geometric series n/2 + n/4 + n/8 + ... + 1 sums to n-1. So O(n) moves are done, and this dominates the log n term for the number of steps.
peri-cl 7 hours ago | parent
O(log n) is if you can split the collection in half in an O(1) step, like, *shoving* the whole pile together as a unit
O(n) if you're moving items one at a time. So, splitting the pile in half once is O(n)
O(n^{3/2}) if the project is way out of control and walking distances start to matter
MisterMunchkin 6 hours ago | parent
pyrolistical 8 hours ago | parent
globular-toast 6 hours ago | parent
QuantumNomad_ 5 hours ago | parent
I like to keep a lot of things in storage, and sometimes go through my boxes and “rediscover” things I haven’t used in a while.
Sure I have a lot of things I never use also. Some things I could sell, and some things I could give away, and some things I could throw away.
But just because a lot of things are in boxes, doesn’t mean that I might as well get rid of all of it for that reason alone.
jeffrallen 5 hours ago | parent
tourmalinetaco 4 hours ago | parent
bajard 3 hours ago | parent
cannonpalms 22 minutes ago | parent
delichon 10 hours ago | parent
solyin 10 hours ago | parent
https://www.youtube.com/shorts/ai1gIWacf0I
It costs ~$1,000 so you'd probably rent it if you're only going to use it once, but it's a neat gadget.
ortusdux 10 hours ago | parent
_kb 9 hours ago | parent
https://www.minidsp.com/applications/usb-mic-array/acoustic-...
radicality 9 hours ago | parent
Lmk if anyone has any questions about it! It’s android-only, but I’ve gotten an agent to write a Mac version of it though haven’t tested yet.
eBay link to what I bought: https://www.ebay.com/itm/960060893216
jcims 9 hours ago | parent
simonw 7 hours ago | parent
dangistan202611 8 hours ago | parent
simonw 8 hours ago | parent
In my case it identified that the likely beep was about every 62 seconds pretty quickly - then I confirmed that one of the recordings was the mystery sound and it locked in from there.
luma 6 hours ago | parent
userbinator 7 hours ago | parent
raldi 10 hours ago | parent
gandreani 10 hours ago | parent
"The system worked as intended. It gave me the position of the beep to within about 40cm, then I dug through that specific pile of boxes and found an ancient carbon monoxide detector that desperately wanted its batteries replaced."
adm4 10 hours ago | parent
gregsadetsky 9 hours ago | parent
Who would win?? :-)
I lack the courage to plant such a PCB prank device... it really feels like you could drive people completely crazy haha
hk1337 9 hours ago | parent
hinkley 9 hours ago | parent
Same brand as my smoke detectors.
Make sounds that can be detected directionally, assholes.
pizzafeelsright 9 hours ago | parent
davio 8 hours ago | parent
simonw 8 hours ago | parent
Our dog goes outside and hides in the lavender bush if a smoke alarm starts making a "I need a battery" noise.
So I went into this project with the attitude that I would like to solve this class of problem forever.
thenthenthen 7 hours ago | parent
db48x 5 hours ago | parent
thenthenthen 4 hours ago | parent
tourmalinetaco 4 hours ago | parent
HPsquared 3 hours ago | parent
Animal species sometimes use this in different sounds they make. An alarm call has that kind of "smooth tone" characteristic, so a predator can't locate the source of the sound but it still works to raise the alarm. Meanwhile more social sounds are more "chirpy" and sharp, so they can locate each other.
hypfer 5 hours ago | parent
Nicely done!
> Claude doesn’t have native audio input (yet), but it can run JavaScript and Python code that can analyze audio captured by a microphone.
LLMs can also do that with non-mic audio, btw. I had GLM (or was it qwen?) answer the question of "Why does the spotify version of the Metal Gear Rising" soundtrack sound so bad" - to great results.
Compared with the CD rips on archive.org, the noise floor was 27dB (!!!) higher, and, the whole thing was 10dB more compressed.
I cannot vouch for these specific numbers, but subtracting the good version from the bad one gave me a horrible delta wav file with lots to listen to, so there was definitely a _lot_ of difference.
It got the job done is what I want to say.
solyin 4 hours ago | parent
kawsper 1 hour ago | parent
I bought an album from Apple Music, it was “in flames - reroute to remain” an album I’m very fond of when growing up.
Turns out that the digital version just sounded like trash, it sounded very compressed, so I had to find a CD to rip.
Could be interesting to know how they butchered it.
andai 3 hours ago | parent
cyanydeez 1 hour ago | parent
Then its solved.
caseyf7 7 hours ago | parent
simonw 7 hours ago | parent
gouggoug 7 hours ago | parent
The post touches on my biggest pet peeves about how many software engineers currently use AI at work: they ask it to "write out a problems.md file describing the problem we want to solve" then lob the output over the fence for the rest of the engineering org to review, often times without even disclosing they used AI to generate it (it's, of course, obvious).
AI can not do the reasoning for us; thinking that because it is great at writing code that works, the same applies to documents whose primary purpose is to demonstrate critical thinking, explore trade-offs, and reason through a problem is absurd.
In fact (or IMO?), this "problems.md" document is entirely unnecessary. In many cases, simply describing the issue and providing the relevant context is enough for AI to come up with a working solution.
AI can not do critical thinking (yet), so don't ask it to (and stop sending your fellow software engineers AI-slop RFCs).
simonw 7 hours ago | parent
This is actually the first time I've told an agent to write out a "problems.md" document - it was an experiment to see if stating the problem provided decent results, as opposed to working directly on a spec.
It did seem to work well though. I was outsourcing as much judgement as possible to the model, and the model did a good job at making decisions that got me to my required end result.
In this case, the AI could do the reasoning for me. Opus 5.5 and Fable 5.2 are really good!
Confiks 3 hours ago | parent
I don't mean to respond to your 'professional work' scenario, but I find it quite useful to first let it draft a PLAN.md, even when "in many cases" it would one-shot some implementation without it. I mostly prompt it with a problem statement, "write a PLAN.md", "ask me any questions in prose and numbered", "don't start implementation until my say-so". The back-and-forth questions are often pretty significant to the final result, and I can (skim) review the plan and make other adjustments.
When you ask most models to write that plan, you see an extended thinking trace similar to implementation itself, but now all the decisions are made up front. If you one-shot it an implementation, those decisions are sprinkled all over the implementation phase, while half of it has been written and some architectural choices have already been locked in. I then frequently adjust that plan to end up (IMO) with a much better implementation, or much better suited to my situation, with less shortcuts.
foo12bar 6 hours ago | parent
globular-toast 6 hours ago | parent
I've personally had to track down a beep before and used a similar technique as you suggest: time the beeps then be in right place to perform a kind of binary search to home in on it. I found a smoke alarm in the roof space above my flat, nailed to the top of the rafters that had been there since the building was built 20 years prior. It was annoying but I'm sure it took way less time and effort than "getting AI to do it".
devilsdata 4 hours ago | parent
Melatonic 6 hours ago | parent
Carbon monoxide is only produced when it's burned and builds up. And is obviously very dangerous. But a small gas leak building up over time or an oven pilot out and left on is not great for you either.
Make sure you place it relatively near the ceiling as it pools up there apparently. Saved my life during Covid lockdowns
gorgoiler 6 hours ago | parent
https://neufangled.com/payload
Simon’s microphone configuration is very similar except instead of payload kg it would be affecting detection accuracy.
I wonder why the accuracy was an OOM outside the expected result (40cm vs 7mm)? Also using claps for calibration of unknown devices feels like a different approach to measuring distances between devices with a tape and solving the polygon. How many devices would be needed to self calibrate — 1x beep and Nx listening — instead of relying on smudgy claps? Or maybe every sound is smudged in a room filled with boxes?
globular-toast 6 hours ago | parent
What I've been finding is just setting AI loose like this doesn't give me any of that. I've decided not to think, so I don't feel any struggle. No struggle means no relief, no feeling of accomplishment. I also don't learn anything because AI read the paper for me. Learning is what I live for.
simonw 5 hours ago | parent
There is no world in which I would have spent the days (more likely weeks) necessary to learn enough about audio analysis in both JavaScript and Python and the WebAudio APIs necessary to build this thing, just to help me identify an annoying beep.
Thanks to coding agents, I got to build a wildly ambitious system that still taught me a bunch of interesting things about audio analysis and network web application design, all in about an hour and a half of clock time.
The alternative wasn't learning those things at increased detail, it was not learning anything about them at all.
And I added more tools to my tool belt for the future. I now know that it's possible to measure distances to sounds using cheap devices over a network, and I've got code in a GitHub repository that shows exactly how to do that.
The trick where the server could inject additional JS modules into the clients without needing to refresh the page (and hence lose the microphone permission) was neat, too.
globular-toast 3 hours ago | parent
I don't believe you learnt anything to any appreciable depth in 1.5 hours. I guess you learnt what's possible, but not much more. I get it, learning is learning and you got 1.5 hours' worth. Fair enough.
The bit I struggle with, though, is celebrating things being easy. I'm not excited by easy things. I like hard things. It's a bit like reading an account of how easy it was doing the Alpe d'Huez in a car. I'm more excited by people cycling up it because I know how difficult that is, or building the car. But driving it? Meh.
I do wonder if I'm descended from the people who built Stonehenge. I get restless if things are too easy. I need something hard, like erecting huge stones. But damn it's been nice being able to get that kind of satisfaction just sitting at a desk.
sirtaj 2 hours ago | parent
globular-toast 1 hour ago | parent
ozyschmozy 5 hours ago | parent
bronlund 5 hours ago | parent
voidUpdate 4 hours ago | parent
You found out you can connect a microphone to a computer and have it record and process the audio? Well I'm glad you can be one of todays 10,000 https://xkcd.com/1053
simonw 4 hours ago | parent
skydhash 1 hour ago | parent
jonathanstrange 4 hours ago | parent
Confiks 3 hours ago | parent
Of course it can analyze audio. I made it detect Marijn Frank saying a high pitched "Hallo" in a much better way that I could have done myself (subtitle matching), namely by frequency analysis, in the process learning how that works with librosa: https://marijnfrankzegthallo.nl
interloxia 2 hours ago | parent
I didn't have birdnet to hand and wanted to identify something. It was hard to take a picture with my phone but easy to record. Turns out one of the models was able to identify it.
I guess the Americans might appreciate gunshot identification and localisation or someone might drive around in winter/summer recording the streets to listen for heat pumps that are on the way out so they can advertise repair services. I would like a local version for movement/presence detection based on footsteps as an alternative to having pir sensors all over the place for my hall lights.
chimpontherun 3 hours ago | parent
Standing in the hallways listening at different angles, as the article says, didn't help. No Fable in '05 either.
So I had to improvise. Got a ~1 meter stick and two headphones (every headphone is a microphone, even if it sucks as a microphone). Plugged them into the stereo mic port, and started recording in Audacity. The phase shift between L and R pointed directly to the source. Took about 4 or 5 beeps to get the sucker.
Turns out, it was hiding above the ceiling tiles in the garage. My wife still tells this story to all her friends as one of my biggest life achievements. Everything I shipped, the companies I founded -- pales in comparison to finding a dead smoke alarm
andai 2 hours ago | parent
chimpontherun 2 hours ago | parent
frumiousirc 15 minutes ago | parent
brookst 1 hour ago | parent
Many many many years ago, I was a wee IT manager. Sort of a weird company, I was too young to be much more than smart kid who can install / fix anything.
Anyways, worked a few years there, made some friends, had one CAD engineer who was an utter jerk. In hindsight, probably a bully, but at the time just a really irritating person.
So that was my first foray into small electronics… worked up a small breadboard with a 555, some source of randomness I don’t remember now, a piezo speaker, and a 9v battery. It would emit a short beep at random intervals between roughly 60 and 240 minutes.
Stashed it above the ceiling tiles in his office on my last day at the company.
rkagerer 32 minutes ago | parent
emeril 14 minutes ago | parent
looperhacks 2 hours ago | parent
taegee 2 hours ago | parent
thrawn0r 2 hours ago | parent
AnneTrotter 1 hour ago | parent
singularity2001 2 hours ago | parent
frumiousirc 1 hour ago | parent
Maybe the directionality of typical speaker and mic spoils an attempt to apply a 1/r^2 fit?
bdavbdav 57 minutes ago | parent
It was nearly impossible to get decent repeatable results.
FerretFred 21 minutes ago | parent