[HN Gopher] Have you ever hurt yourself from your own code?
___________________________________________________________________
Have you ever hurt yourself from your own code?
Author : its_nikita
Score : 611 points
Date : 2021-05-26 16:00 UTC (2 days ago)
(HTM) web link (blog.nikitas.link)
(TXT) w3m dump (blog.nikitas.link)
| sirwitti wrote:
| In 2002 I wrote a paper on audio recording for my grammer school
| graduation and maybe once flipped through it since then.
|
| When seeing the graphic of the wav file header I immediately
| recognized the same graphic I used in that paper.
|
| Sometimes it's funny how memory works :)
|
| Also interesting for how long content can stick around.
| sdenton4 wrote:
| Mistake #0: Working at the wrong level of abstraction.
|
| There are perfectly good library functions (in python, and I
| assume in C) for loading a wav file into a simple array of
| values, and writing an array back into a new wav file... Load the
| data, skip the zeros, and write.
| utf_8x wrote:
| My shitty PID controller code left me with a 2nd degree burn on
| my hand... Does that count?
| yaur wrote:
| I've made the mistake in this article by piping something that
| wasn't uncompressed audio to /dev/dsp. These days I prefer to
| work with speakers with a physical volume knob and start it at 0
| with unknown sources... you just never know what the yahoos
| upstream are sending you.
| jmchuster wrote:
| I usually think of this more in terms of "what's the reasonable
| worst thing that can happen, and then be prepared to compensate
| for it".
|
| e.g.
|
| - could cause this one page to fail to display - be ready to roll
| back, open the page asap once deployed
|
| - could bring down the entire website - be ready to roll back,
| maybe try running this during off hours
|
| - could delete the entire database - be ready with a backup to
| restore, maybe make sure your whole team is oncall at the time
|
| - could cause ear damage - maybe play it with the headphones
| sitting next to you first
| frankus wrote:
| I've gradually developed the same instincts around mechanical
| and home improvement tasks. "How could this five-minute task
| turn into a multi-hour nightmare?"
|
| Examples could be spilling a poorly placed can of paint all
| over the carpet, or having a nearly unobtainable fastener fall
| somewhere inaccessible (or where it can do damage).
| Waterluvian wrote:
| Hacking the bits directly seems like a lot of fun for various
| problems. A great way to learn the details of a format.
| jdswain wrote:
| Did something similar to OP. I was writing a controller for a
| streaming system and managed to accidentally set the volume to
| 100. This was with speakers not headphones. I had to pull the
| power plug to stop it. Just about gave me a heart attack.
|
| The bug was a feedback loop in the volume control code that
| somehow ramped the volume up without any way to stop it. After
| that I always tested with a physical volume control later in the
| audio chain, with the volume set to a medium level.
| gmueckl wrote:
| Bugs like these are the reason why I _always_ turn the volume way
| down before listening to audio that newly written code generates.
| And even if you know that you 're listing to audio that's OK, try
| to keep the volume low. Your ears will thank you in the long run.
| It's easy to have headphone levels to high and slowly damage your
| ears with long listening sessions.
| nvmletsdoit wrote:
| There was this time where I wrote shitty code for a imminent
| super urgent release and I did not think about all implications.
|
| I had to work all the week after 10 hours per day just by fixing
| a lot of data I messed up on several clients.
|
| Yeah, I feel I've been there.
| trevortheblack wrote:
| Not exactly, no. But I've gone long stretches where a compiler
| error demands 10 push-ups.
| Teknoman117 wrote:
| Not so much myself physically, but I certainly have written code
| that destroyed my own projects (hurt my wallet).
|
| Many years ago I was working on a mobile outdoor hobby robotics
| project (RoboMagellan) and had two glitches in parallel. One was
| the software controlling the robot, the other was in a
| microcontroller in the kill switch mechanism.
|
| The main computer was reset by a brown out which also caused the
| uC listening for inputs from the radio used as the "enable"
| switch to lock up (with the motors enabled) and I hadn't yet
| learned about hardware watchdog timers.
|
| Drove straight into a river.
| adenozine wrote:
| I'm not sure if you ever write rage comments, just laced with
| profanity and nonsense, complaining about the situation at
| hand... I've written my fair share, I used to work with a lot of
| perl and bash, and I'd come across some disgusting ideas that had
| made their way into scripts and utilities. Naturally, finding
| some of that crap after an hours long search for some bugged
| behavior, it can be very frustrating and irritating to find out
| that it all stemmed from someone doing an easy task in a stupid
| way!
|
| I once had someone leave me a message on my desk phone referring
| to one of these comments verbosely, and I happened to be
| listening to my messages on speakerphone as the day was almost
| over and we were all doing our little ritual tasks before we
| walked out the doors for the evening. So, this comment starts
| being read and all my neighbors are packing up their lunchboxes
| or tidying papers on desks, etc. As the message went on, I could
| hear the silence enveloping me, because of course it was wildly
| heinous, and I just froze up and let it play out. It wasn't that
| I couldn't have jumped over there and hung up the phone but it
| was so casual that it just caught me off guard that someone would
| read that awful crap I wrote right into my voicemail! I remember
| the end being sorta like "anyhow, that's not a very good
| practice, so don't write them like that anymore". I don't really
| even remember exactly what happened next other than leaving with
| my tail between my legs. I don't think anybody mentioned it to
| me. I guess it seemed worse in the moment of it.
|
| This was well over 20 years ago now, I was basically brand new to
| everything. That was a turning point, thankfully enough.
|
| Reading open source has exposed me to a LOT of different
| commenting practices. I don't really think about it often enough,
| but the human on other side is always the most important
| consideration.
| sparker72678 wrote:
| I run a home HVAC thermostat with custom code that has no other
| hardware fallback.
|
| Once, due to a logic error on my part the heater was triggered in
| the middle of the summer while I was out of town. The internal
| temp got up to well over 100degF.
|
| I was able to have a friend come over and disconnect things for
| me, but I could have killed a pet, at the least, if not some more
| sensitive hardware.
| _theory_ wrote:
| Unsurprisingly, there are very few accounts on here of people
| killing themselves with their own code.
| mths wrote:
| I recently looked back on some old projects of mine, it was
| rather painful.
| A4ET8a8uTh0 wrote:
| Not directly related. I recently read some of the English work
| I did as a kid. It was painful to read.
|
| Still, this is how we learn. We make some ridiculously bad
| choices and we hope to learn from those.
|
| I guess what I am saying is: if you are looking at past work
| and feeling bad/embarrased, likely you have gotten better.
| ganzuul wrote:
| I program CNC lathes in G-code for a living, so yeah. Dodgeing
| shrapnel is part of the job. A missing dot could cost thousands
| in repairs and result in loss of life limb.
|
| There is usually an aptitude test for machinists. Not everybody
| can do it fast enough safely.
| cartoonfoxes wrote:
| Good machinists are something akin to lion tamers. CNC machine
| tools inspire a special sort of horror. They're mechanical
| beasts that growl and groan, ready to lunge at a moments notice
| with sharpened fangs, and will disembowel you if you let them.
| Working with a machine that will happily blow itself to pieces
| with a few errant keystrokes does wonders to focus one's
| attention. You learn to move carefully and deliberately in
| their presence.
|
| I'm a software developer who has had occasion to program a CNC
| mill and lathe over the past few years. The relative banality
| and physically harmless nature of software bugs made in my
| normal job made the stakes seem so much higher by contrast,
| when touching machine tools. I partly credit this "culture
| shock" in helping to keep me safe and the equipment undamaged -
| apart from a trio of snapped endmills on Day 1 (F100 instead of
| F10).
|
| I can definitely echo that the ability to work safely, quickly,
| is one thing that sets the pros apart. I'm glad I have the
| luxury of time that light production affords.
| ganzuul wrote:
| I managed to program a 'hard interrupt' into my skull so that
| before I press the play button I at least have brought into
| mind what I expect to happen... It usually works. You have to
| keep a lot of state in mind, and when you run multiple
| machines at once you do get immersed in the flow and time
| flies. It is a power trip when you're punching buttons with
| complete confidence like you're part machine yourself. A
| quick one to come down from too. :)
| lmilcin wrote:
| I have cut my finger after a bug in a controller I was working on
| started spinning a motor at a time it was not supposed to.
| [deleted]
| aaronbrethorst wrote:
| I find it a bit grim that the word "Tesla" only appears once in
| this entire thread, despite 356 comments preceding me.
| scrps wrote:
| Not sure if this qualifies as my own code but I have a highly
| modified 3D printer, I had upgraded to more modern trinamic
| stepper drivers which have sensorless homing and I had forgotten
| to set a sane value for the torque limit to let the drivers know
| when it had hit the axis' limit when I ported over my existing
| firmware config and like an idiot decided to use my finger to
| test it... I learned that day even small stepper motors have
| finger crunching torque and that under sudden intense pain you
| will forget where the power switch you've operated 1000s of times
| is located.
| exikyut wrote:
| Are your finger(s) okay?
| scrps wrote:
| Thanks for asking, they are. Just nasty bruises on both sides
| of my fingertip and a bruised ego.
| whiddershins wrote:
| One of the first lessons (often learned the hard way) of any sort
| of audio processing work is to turn your volume way down before
| starting any sort of playback.
| paxys wrote:
| Physically no, but the amount of emotional pain endured from
| reading my code cannot be quantified.
| tobmlt wrote:
| Are you my old advisor? If so, you are correct as usual, sir.
| ;)
| kosma wrote:
| I've once started a small fire. I had a software-controlled
| voltage regulator connected to the printer port (it was for a
| high-voltage programmer for 8051 chips) and I was writing a Linux
| driver for it. I accidentally put the chip in backwards... I ran
| the software and suddenly had a physical manifestation of _lp0 on
| fire_ on my desk. ;)
| andix wrote:
| Ask Howard from the Big Bang Theory. He has a nice story to tell
| about a robot hand ;)
| abyesilyurt wrote:
| When I was in college, there was a introductory signal processing
| course. We were using a LabView based FPGA, called myRIO.
|
| In one of the labs, we were doing audio processing to filter out
| noise from the audio and listening on the headset. Towards the
| end of the session, we were messing up with the code to see what
| else is possible.
|
| Anyways, I accidentally set the gain so high somewhere, while
| wearing the headphones still and played a tone. I almost got
| deaf. It still gives me chills to think about it.
| _pmf_ wrote:
| Only emotionally.
| unnouinceput wrote:
| Back in mid 90's, as a fresh student barely having a year of
| programming under my belt but with a burning passion I was doing
| my summer practice (required by school) to a factory IT center.
| This factory was making a lot of large industrial stuff but
| during that period the current contract was to make propellers
| for big ships. Like 20m high one. And they used AutoCAD in the IT
| center to design those. For a Japanese client.
|
| So the director of said IT center, seeing me how I dabbled in all
| kind of stuff with latest and greatest technology asks me "can
| you create a copy protection?". Nowadays I see this kind of
| question as a job on my freelancer marketplace and I always say
| to the potential customer "impossible, and if anyone else says
| otherwise are either incompetent or just want to hustle your
| money" but back then? my naive brain said "sure I can".
|
| The IT center just acquired, at around 4000 USD each, a brand new
| line of 486 DX2 at a whooping 100 MHz which came with latest and
| greatest Windows 3.1 for Workgroups. Around 20 of them for all
| their design engineers to use ACAD at a faster pace. Serious
| business required serious tools. So I enter the scene with my
| protection. Which was a wrapper around the protected "exe" that
| on launch would ask for password, 3 tries and you're out. If
| password was provided then it would unwrap the good exe and
| launch it, otherwise the protection would kick in.
|
| And oh boy, what a marvelous protection I wrote. First step -
| overwrite MBR with zeroes, you can guess to what goal. Second
| step - well, this one is a bit complex. You see back then you
| could directly access graphic cards DMA channel and write your
| own graphic driver inside your application because, well, DOS was
| like that. And poor Win 3.1 was no different either. And because
| of a physical layout that majority of board back then employed
| all the same you had an electrolytic capacitor near (like 2 mm
| only) a pin. Which said pin could go to up 25 KV if you were
| driving a certain pattern on your graphic card. Which would
| result in a shortcut between the pin and the capacitor. Which
| would ignite the resin that was there. Which would set your
| computer on fire. Third step - restart the PC.
|
| So I am there with the director, head of designers and a bunch of
| other people to test my copy protection. I explain to them in
| what the protection consist of, and we test it. They wanted to
| test it on "acad.exe", so I wrap it up in my protection, delete
| the original and the new exe is launched. All good, password
| prompt, get in, Autocad is launched, they can do the work in
| peace. Except the director asks "and if I launch this wrapper
| tool separately, what happens?". "Nothing, it's just a tool and
| if you don't supply a parameter will simply exit". So the
| director does that, except he supplies a bogus parameter, by
| mistake, and not any parameter but ^U...you know, the combination
| that a Windows user will see at a command prompt when he does a
| mistake and presses CTRL+Z (Undo in Windows), because he pressed
| space and then wanted to back it off..and muscle memory for that
| action is CTRL+Z. And happily my tool tries to wrap around a file
| called ^U, but for some reason that file instead to be "not
| found", because I had this coded, was treated at "launch the
| protection". So here a little bug, launched my protection on a
| $4000 brand new machine. Of course MBR was zeroed instantly and
| then we see some stuff scrambled on the screen (protection no 2)
| and puff!! we're at BIOS reset. No fire!!! Why? because
| protection no 2 should've run for 10 seconds to allow the buildup
| of those 25 KV, but I was lucky because my dead ass brain
| introduced another bug and I was triggering the reset
| immediately.
|
| I spent the next 3 days, me and the head of designers, rewriting
| the MBR by copy/paste via eyes and hands, using a hexeditor, by
| reading the MBR from another 486, and I was lucky since they all
| had identical configuration. That protection scared off the
| director, he never use it. And my ass hurt from the stick because
| $4000 during that time would've been both my parent income for an
| entire year.
| thih9 wrote:
| It's extremely easy to hurt yourself with audio, it almost feels
| like cheating. Just regular audio work provides plenty of
| opportunities to do that. Here's a random note from
| Supercollider, a platform for audio synthesis [1]:
|
| > CAUTION: macOS system volume doesn't effectively limit audio
| applications' maximum volume. Extra care has to be put in working
| on this platform, especially with headphones, because programs
| can produce unexpectedly loud sounds regardless of system volume
| settings, potentially causing ear damage.
|
| [1]: https://supercollider.github.io/download
| vvillena wrote:
| After such one experience, I've never played with audio while
| wearing headphones unless there's a physical volume control in
| the signal chain.
| jan_Inkepa wrote:
| The macOS system volume behaviour is ridiculous. I ... had a
| _really_ bad time once with puredata. I...it 's really
| unpleasant to remember. I also generally amn't entitled with
| open source software, but reporting this as an issue to the
| people at puredata (dsp software), recommending that they put
| in their own software cap in the pipeline was met with the
| response that I could always do that myself in my scripts as
| I'm writing them if I cared about it. For me (as someone who's
| made audio software), user's physical safety of this avoidable
| kind must be high priority, and it's more or less
| unconscionable to leave things like this to chance.
| carstenhag wrote:
| Oh Apple... On the iPhone, using earphones, the volume is
| limited (afaik because of a EU law). On Mac, none of that is
| the case. I was in a teams called, tried to make it quiter
| with the touchbar but accidentally set the volume to 80%
| (insted of 10-15 where it's usually at). My ears hurt for an
| hour. Thanks Apple for that useless Touchbar.
| goodpoint wrote:
| Hearing can be damaged both by high volume and very sudden
| increases.
|
| It's absurd that there are no safety mechanisms implemented in
| hardware.
| mustacheemperor wrote:
| I just made a comment elsewhere in this thread regarding the
| absolutely awful behavior iOS had for 3rd party bluetooth
| headphone volume until a recent (~18 months or so) update.
| Every time I connected my Sony headset over bluetooth the
| system volume would reset to max, sometimes seemingly only
| after I had hit the play button in spotify. I am fairly certain
| this actually damaged my hearing after several occurrences of
| getting up, throwing my headphones on as I walked out the door,
| and blasting myself with max volume playback by accident. Even
| now that the issue has been fixed, I habitually check the
| device volume anytime I connect something on bluetooth. To this
| day I'm astounded Apple shipped such problematic behavior over
| the course of repeated iOS updates. I think it was fixed around
| the time they started to provide feedback about listening
| volumes in Apple Health.
| severak_cz wrote:
| this is when developing audio I have several precautions in
| place:
|
| 1) system volume level pretty down (usually 30%) 2) headphones
| volume in the middle 3) when testing something really broken I
| have my headphones not on the ears but on the neck
| Snoozus wrote:
| Shouldn't you do it the other way round? Set software volume
| to 90% and limit to safe levels with a good old potentiometer
| to be safe from any software issues?
| severak_cz wrote:
| yes, that's safer way how to do it.
|
| However I use that 30% system volume for my day to day
| usage. When needed, I can always bring volume up.
| allo37 wrote:
| I don't know about hurting myself specifically, but at my first
| job I programmed PLCs. You know, those little computers that
| control industrial machinery... my code could definitely hurt
| something (or someone).
|
| One example that stands out is a case where we had a heating
| element to seal plastic bags. It turns out those heating elements
| get ridiculously hot and only need to touch the bag for a
| fraction of a second. Naive me felt that 3-4 seconds was a
| "reasonable" amount of time for a first attempt...it caught on
| fire.
| mojuba wrote:
| Easily. Got ear infection (!) from an unexpected, very loud
| random noise in my headphones (just one channel) as a result of a
| bug in my CoreAudio code.
|
| What does CoreAudio do if your floating point audio buffer is
| filled with random numbers? That's right, it plays random noise
| at the maximum possible level, bypassing the system volume
| setting.
|
| Why ear infection? I have no idea, but my GP explained that it's
| quite possible even if the eardrum doesn't get damaged. Which in
| my case thankfully it didn't.
| severak_cz wrote:
| > it plays random noise at the maximum possible level,
| bypassing the system volume
|
| but why bypassing the system volume? It does not make sense to
| me.
| ahartmetz wrote:
| If the system volume is a multiplier and the float values
| have large exponents... Small times huge ~= huge.
|
| I guess safe volume control should ideally limit the output
| energy. Energy is proportional to square (or so) of
| frequency, so ideally it would take that into account as
| well. That rules out simply hard-clamping sample values
| because that creates high frequency / energy distortions. Not
| trivial, especially if low latency is also required.
| mojuba wrote:
| Exactly and it's not obvious at first. You can easily see
| that the system doesn't limit the FP audio in Logic Pro:
| you can in principle crank up the volume all you want. So
| if the system volume multiplier is, say, 0.1, you can have
| a buffer with values -10..10 and that will play at maximum
| volume fine. Everything beyond that will get clipped by the
| DAC.
|
| So random FP noise clipped is still random FP noise at
| maximum level.
| user-the-name wrote:
| I hit this bug just the other night, and I think what caused
| it was accidentally sending NaNs to the audio API. That
| bypassed whatever clamping functions were in place, and just
| produced an ear-piercing shriek. Very unpleasant.
| mojuba wrote:
| No, it's not just NaN's, see my reply above.
| user-the-name wrote:
| Just tried it and yeah, I can reproduce. That is pretty
| bad!
| sowbug wrote:
| About seven years ago I got a bright idea to build a quadcopter.
| I had experience with little $25-50 drones that bumped around the
| house with their fragile one-inch propellers, which obviously
| qualified me to build and pilot something significantly bigger.
|
| Off to Aliexpress and Banggood I went. I ordered a carbon-fiber
| chassis, big strong motors, ESCs, 3-inch propellers, a FrSky
| receiver, a Devention transmitter, an STM32-based controller,
| giant li-poly batteries, and all the cables and fasteners I
| needed. Over the coming weeks the parts trickled in. Finally once
| the whole kit had arrived, I assembled everything, connected the
| TTL serial, built the firmware, downloaded it to the controller,
| and like the brilliant software engineer I am, plugged in the
| batteries on my bench at home.
|
| Nothing happened. Those of you who have blown off fingers
| wondering why the firecracker under the Coke can hasn't exploded
| yet can guess what I did next.
|
| I examined the chassis closely and began fiddling with the cables
| and connectors. Again, like the brilliant software NOT HARDWARE
| engineer that I am.
|
| Evidently, I fixed the problem. Which caused four gigantic
| propellers to begin whirling around my hands and face. And four
| brushless electric motors to emit their usual high-pitched whine,
| which today I instinctively hear as them saying to me "You god
| damned idiot. You are _so_ ours. "
|
| I was not injured. But that evening, I came close to slicing at
| least a couple things off my body. I hadn't appreciated the scale
| of the thing I was building, or the inherent risk in debugging it
| once I'd slapped it all together. I shelved the project for
| years, eventually giving it to someone at work who claimed to
| know his stuff when it came to drones. I hear he's doing fine.
|
| _Disclaimer: this story isn 't about code or my own code. But I
| think it fits here because I approached dangerous hardware with
| the "build, run, see what happens" mindset of a software
| developer._
| dharmab wrote:
| There are some pretty gruesome photos on /r/multicopter of
| fingers sliced like a four year old's hot dog. Spooky stuff!
| HeyLaughingBoy wrote:
| You learn. Hopefully before someone gets hurt.
|
| I still remember an EE lab professor saying one day "get in the
| habit of using red wires for Power and black for Ground. That
| way, when you have your first accident, maybe it won't be too
| bad."
|
| Or a technician I used to work with who would quote his tech
| school instructor daily, "NO, no loose conductors on the test
| bench."
|
| All the nail heads on my work bench are covered with electrical
| tape. I try to use red wires for + and black or green for -
| whenever possible. I learned to think about what could happen
| before I flip the power switch (first power up use the lab
| supply with current limited to the absolute minimum the circuit
| needs), or when I hit F5 in the debugger (does anyone have
| their hands in the machine?).
|
| I've still set things on fire, still broken expensive pieces of
| equipment because I had the wrong sign on a variable, still
| made loud banging steel-on-steel noises because I didn't
| calculate an offset correctly etc.,
|
| At the end of the day, if everyone goes home with all body
| parts intact, we'll call it good.
| noisy_boy wrote:
| Thankfully you were unscathed. Otherwise I could not have
| mentioned that I really enjoyed reading that :)
| [deleted]
| Ao7bei3s wrote:
| tl;dr: Experience makes dangerously careless. Examples:
| quadcopters, lasercutters.
|
| I had a similar scenario with the same preconditions. In this
| case, one of the propellers came off and barely missed a face.
|
| This was a 10 inch hard plastic prop with some sharp edges. It
| could've taken an eye out. It could've caused serious cuts. It
| could've been a carbon fiber prop and caused _serious_ cuts. Of
| course it could also have been a soft plastic, round edged prop
| that would've done less damage. It missed, and nothing
| happened.
|
| In this case, the cap on the mount wasn't tight enough -
| complete negligence; preventable. But what bothers me it that
| it is not possible to completely prevent that kind of mistake.
| Mount caps _can_ shake loose under vibration - with some
| features (spin reversal) there is no one safe screw direction.
| Also, mounts can break. More importantly, prop blades can
| break. Some prop mounts only use rubber loops to secure the
| props - they props are _meant_ to fly off off in that case. A
| prop could be inverted, or the PID controller could diverge,
| potentially sending the entire copter into your face. Probably
| everyone should wear safety goggles. But nobody does, and
| things rarely go wrong. At the very least, please do not have
| your head on _or above!_ the propeller's plane. Search Youtube
| for "quadcopter hand launch" for an appreciation how often this
| rule is broken as a matter of normal, routine operating
| practice. Often the person holding is not the pilot. That's
| some trust, when a small inadvertent finger movement on the
| pitch axis could permanently injure.
|
| What also bothers me is that the people who should and do know
| best often ignore safety the most. Ever seen a group of copter
| devs scramble as the noise of the copter thirty feet overhead
| cuts off? Ever seen the same group charge a few dozen lithium
| polymer batteries that have survived more than a few crashes,
| unattended, with no fireproof bags, with no fire extinguisher,
| in someones room? Nothing ever went seriously wrong. But
| everything could have. And dont get me wrong - these are smart,
| safety minded people.
|
| Along the same lines, if you are ever near someones DIY
| lasercutter, say in a hackerspace/makerspace... do _not_ assume
| it is eye safe, no matter what they claim and what laser safety
| certs they claim to have. In particular, do _not_ ever assume
| it is eye safe when you look at it from an unusual angle, like
| when you bend down, kneel, or when small people, children or
| pets are present. I have seen multiple DIY lasers get the top
| cover right (easy - any thick plastic sheet will block stray
| light from a CO2 laser), and completely and utterly fail to
| close small holes in front (air vents, or lid not closing
| perfectly, ...). There's a back of the envelope calculation
| that looking at the diffuse (not even reflected) spot
| (invisible! - and there might not be secondary light) a 100W
| CO2 laser (a typical size for ambitious hobbyists) creates on a
| surface can cause permanent eye damage if viewed from 1 meter
| away.
| driverdan wrote:
| I love laser cutters but all the videos of cheap open frame
| cutters on YouTube scare the shit out of me. I never want to
| be around one with an open frame.
| amelius wrote:
| > Examples: quadcopters, lasercutters.
|
| Believe it or not, but you can find YouTube videos where the
| two are combined.
| sowbug wrote:
| I stick with off-the-shelf drones since my DIY incident, but
| I still get very uncomfortable when mine hover at eye level.
| 05 wrote:
| > Probably everyone should wear safety goggles. But nobody
| does
|
| well, some of us do, it's called 'FPV'.
| VBprogrammer wrote:
| I feel obligated to add my silly mistake here. I was playing
| with SDR and was soldering together a small antenna for
| receiving ADS-B signals.
|
| I soon realised my electric soldering iron wasn't powerful
| enough so I nipped out and bought a miniature blow torch. The
| kind which are basically a big cigarette lighter. Having got it
| home I tried igniting it a few times and nothing happened. I
| held it up to my ear to try to hear if there was any gas coming
| out, sure enough there was gas coming out, which in that
| instant ignited beautifully into a 700 degree flame pointed
| right at my ear.
| HeyLaughingBoy wrote:
| Friend of mine did that with his gas furnace after it went
| out. I think his eyebrows grew back to where you couldn't
| tell anymore...
| signaturefish wrote:
| Hey, accident twins! I once had a Zippo lighter that was
| playing up - you could strike it and you could see the spark
| fly, but it didn't light. I sniffed the wick, yeah,
| definitely fuel evaporating off it. I struck the striker,
| yup, spark. Sniff, fuel, strike, spark. Sniff, strike and OF
| COURSE the thing lights up immediately, sending a cigarette
| lighter flame right up my right nostril. I'm told by
| bystanders that half my face lit up in an "electrocuted film
| character" way for a fraction of a second before I jerked it
| away, and I was smelling nothing but burnt nose hair every
| time I inhaled for about a week.
| trasz wrote:
| FWIW, when that happens just blow at it slightly.
| busymom0 wrote:
| WHAT?
| 8fGTBjZxBcHq wrote:
| People are sometimes kind of down on that approach in software,
| considering it sloppy. Especially in comparison to other
| engineering disciplines it just looks kinda bad sure.
|
| But really I'm pretty sure if for example civil engineers could
| build a bridge in an hour and load it up consequence-free
| they'd do it too.
|
| The fact that we do it isn't bad at all, but yeah it's easy to
| not realize when you've exited the realm of consequence-free
| testing.
| devoutsalsa wrote:
| I wonder how long it will be before we can 3-D print a dam in
| place.
| hyperhopper wrote:
| I mean, the novel of 3d printing is that it's just additive
| construction, don't we already build dams and almost all
| other structures that way already?
|
| A crane is just a bigger print arm :)
| hutzlibu wrote:
| Yes, but the dream is to build physical things, just with
| software.
|
| You type in your commands and then magic happens and
| something is build (after a while). Nothing to be done by
| hand (ideally)
|
| But I would love to play with a fully automated remote
| controlled printer the size of an crane, though.
|
| But then there should probably be no humans around.
| devoutsalsa wrote:
| You have a point :)
| agustif wrote:
| Those beaver-bots will be ferocious!
| Mauricebranagh wrote:
| Well hundreds of years of bridge disasters, fatalities and
| some times bad poetry
| [https://www.scottishpoetrylibrary.org.uk/poem/tay-bridge-
| dis...] is a harsh teacher.
| TameAntelope wrote:
| In a similar vein, I once stuck my finger in one of the fans on
| my desktop to stop it from knocking.
|
| Sliced it pretty good! Honestly, if I had just touched it
| closer to the center it probably would have been okay...
| SavantIdiot wrote:
| I built one too, and the first time I powered on the motors I
| felt like I was staring at four unguarded blenders and thought:
| wow, people actually handle these things while they are
| running.
|
| Made me very nervous for a long time, especially the first few
| flights (or attempt at flight).
|
| Now I twitch whenever I connect the battery and the FC makes
| them jerk a little. I know they aren't armed and failsafe is
| active and all, but you bet yer tuchus that I'm super careful
| connecting!
|
| Glad you didn't shred anything.
| Ao7bei3s wrote:
| Not sure if you want to hear this, but please don't entirely
| trust any arm/safe system. I've had to debug one when it
| failed. Original dev: "impossible... show me... huh?!".
|
| (It was some faulty hardware. Dont remember the details; it
| was a non obvious issue with one FC. Wasn't worth fixing the
| hardware, I discarded it.)
| SavantIdiot wrote:
| Point taken. I'm getting a tiny bit lazy connecting the
| batteries (too bad XC60 connectors require so much force).
| But I'm very cautions to make sure my fingers aren't in the
| line of the props (I actually used to wear welding gloves
| when connecting the battery). I just need an inline 60A
| switch or something even safer that doesn't keep my fingers
| in the line of fire that long. Thanks!
| gizmo686 wrote:
| Back in college I made a similar mistake.
|
| I was taking a class in software security and had a homework
| assignment to demonstrate a buffer overflow. For extra credit, we
| could have our exploit play music without invoking exec. My
| approach to this was fairly straightforward. Using ffmpeg I
| converted the audio to raw 16bit little-endian PCM. Then I
| appended this data to the end of my exploit. When my exploit
| runs, it sets some ioctls on /dev/audio then starts copying the
| data from the end of the file to /dev/audio causing sound to
| play.
|
| As you might have guessed by reading the article, I had an off-
| by-one error, causing the music data to be misalligned and loud
| static to play. Fortunately, my system volume was not
| particularly high, and I was happy to even get sound to play. I
| never figured out where I made an off-by-one error, since I had
| just assumed that the static was caused by an alignment issue
| that could be "fixed" by adding a 0 byte to the start of the
| audio data.
| NovemberWhiskey wrote:
| I've never hurt myself, but I have set the computer on fire.
|
| Context: building an avionics test set with an integrated loads
| and measurements capability and complex relay switching network
| to allow different things to be switched to different loads and
| voltage drops measured. During software/hardware integration
| testing (first time that the hardware had been driven full speed)
| we found a bug in the CPLD that resulted in 28V being sunk into a
| 2A resistive load over a couple of PCB traces specified for 10mA;
| resulting in a large amount of magic smoke being emitted.
| sgtnoodle wrote:
| Oh yeah, plenty of flesh wounds. No serious injuries that I can
| remember, though. Maybe that means it was a head injury? :-) More
| importantly, I don't think I've injured anyone else seriously
| either.
|
| I've worked on embedded software for solar powered race cars,
| rockets and spacecraft, self driving cars, and most recently UAVs
| and corresponding high power motorized ground systems.
|
| You gotta take safety procedures seriously when testing out
| electro-mechanical systems strong enough to injure you. One
| memorable bug discovered in testing in the last few years I
| labeled "ninja assassin mode"...
| arionhardison wrote:
| Yes, I setup a DDP to figure out how I can make my own TNF
| blockers using nutrient intake optimization.... yada yada yada.
| Immunomodulators and the immune system are really complex and now
| I have 2 detached retinas.
| _theory_ wrote:
| You win this thread
| ed25519FUUU wrote:
| Can you explain more about what you did and why?
| arionhardison wrote:
| tl;dr - too much modafinil.
|
| Yes, I have Crohn's and I do not like to take the meds or
| listen to the doctors. This is NOT AT ALL SOMETHING I
| RECOMMEND, PLEASE DO NOT ATTEMPT IT.
|
| Crohn's is an auto-immune disease and the main class of drugs
| that is used to treat Crohn's like mine (long term) are
| called TNF inhibitors or TNF blockers.
|
| TNF alpha triggers the production of several immune system
| molecules, including interleukin-1 and interleukin-6. I
| realized I can track this with basic inflammatory marker
| test, I also realized that I could use diet to impact my
| markers. So instead of taking what is referred to as a
| Biologic e.g.: Adalimumab, Certolizumab etc... I started
| using NIO to try and get the same effect.
|
| I got a pill making machine, and learned how to make
| supplements but they were not working well enough so I knew I
| needed something stronger. Then I found this article:
| https://pubmed.ncbi.nlm.nih.gov/32311496/ I think it was on
| HN but I do not remember for sure. I order some modafinil and
| worked it into my mixture.
|
| I do not manually create my mixtures because I do not want to
| know which version I am on, I want my symptoms to go away and
| that should be the trigger to tell me if its working. So I
| have a 14 vile setup with an audrino all wired into my press
| and based on my food diary (e.g.: nutrient intake) it decides
| how much of what should go into a run. e.g.: how much burdok,
| tumeric, serrapeptase etc...
|
| I got something wrong and ended up adding far too much to a
| run of pills, I didn't realize this until i started ti see
| floaters in my eye and I checked to see how much moda was
| left and it was far less than should have been left.
|
| Then i did some reading and a side effect of taking too much
| moda can be detached retnas, since I have all the symptoms:
| Floaters, stars and peripheral flashes I am assuming that
| based on the timing I now have detached retnas, I also found
| my mistake and essentially no matter where my markers were I
| was getting about 600mg of moda per day. Which is far more
| than should be taken. This was for about a 1 month period.
|
| I have fixed the issue now and I have a much more
| sophisticated pipeline but I will have to get this fixed.
|
| NOTE: I am not a doctor, I have no college education or
| anything like that. I just like bio-hacking and decided to
| pursue my moonshot during the pandemic. I can explain more or
| provide pics and vids to explain further if you like, email
| in profile.
|
| I am currently writing up a 100% independent non peer
| reviewed case study to document everything I have done and
| the results.
| ed25519FUUU wrote:
| Wow. I both respect you and think you're absolutely nuts.
|
| Since you seem to be into experimental treatment, have you
| ever tried helminthic treatment?
|
| https://www.healthline.com/health/crohns-disease/hook-worms
| kortex wrote:
| Not OP, but I have done this for allergies. N.
| Americanus, 10-15 eggs at a time. No side effects other
| than an awful itch 12-36h after administration. Been
| great for my allergies. I've cut way down on
| fexofenadine. I also live with a cat and a poodle and
| only really feel symptoms if I literally rub my face in
| the cat, or groom the dog inside without a mask.
| arionhardison wrote:
| If you would ever be willing to discuss your work and
| hear about mine, that would be awesome. AGAIN, I AM NOT A
| DOCTOR. But I really love this stuff and have started to
| study for MCAT just so I know more and dont feel like
| such a moron.
| theli0nheart wrote:
| That sounds horrible. Why?
| arionhardison wrote:
| Yes, it is one of the therapies I am currently studying
| as I have had success with it but it does not scale. The
| reason I want to do this is so that I can create a
| Medicare/Medicaid E2E single payer solution that provides
| these solutions to everyone. Even people on the lower
| socioeconomic rungs. The pandemic was really hard for me
| and I have been behaving very recklessly in terms of my
| own health but I have been very responsible in terms of
| other people health.
|
| I was running an outpatient program for alternative
| therapies before I knew that you cant just do that, you
| need insurance and stuff. So now I am making my own
| Medicare/Medicaid and hope to bring all of my work into a
| single payer system. There is no way I can pull this off,
| my only hope is to attract the attention of some really
| smart people that will tell me why and how I am a moron
| and how to fix it, lol.
|
| I would love to talk about my work with someone but i'm
| kind of still scared because its not in a state that is
| 100% ready for end users and I know everyone is just
| going to laugh at me, lol. Hell I laugh at me. But I
| worked at goop and i know more than everyone there so i'm
| kind of like ... fuck it. Just code / Fierce Nerd blah
| blah <insert-some-rationalization-here>.
|
| Right now I am having fun exploring the world of BHM HMS
| modules, its far less regulated than I thought it would
| be which might not be a good thing, but we will see. I am
| going to do a "Show HN" soon but I want to publish
| feedback from my active patients and providers first.
| mfkp wrote:
| Wait, did you co-opt the term "Medicare" to use for your
| project? (medicare.dev) I'm not so sure the government
| would like that name.
| arionhardison wrote:
| Because I am "literally" trying to recreate a better
| version of medicare and Medicaid. Those terms are not
| trademarked. If you look at Medicare.gov and Medicare.com
| you can see, the term is actually used a ton and the gov
| does not care. They care much more about bad-faith
| actors. One of the main benefits is I don't have to tell
| "regular" people what I am trying to do. This is my
| "moon-shot project so even if it was an issue I would not
| change it just to cause a big fuss and get the press from
| it. The bigger issue was using all of the state HHS
| logos, but they don't really care about that either.
|
| In preparation for my big launch I needed to test the "do
| they care" theory so I literally did 2 press releases.
|
| 1 targeted directly at the D.C. area and one nationally,
| every contact they have made with me has been a positive
| interaction.
|
| https://www.kpvi.com/news/national_news/award-winning-
| progra...
|
| I paid for someone to handle this for me, really
| embarrassed by the title but in their defense I have won
| 7 health hackathons; much of that work inspired what I am
| doing here.
|
| Ideally I get to a point where my systems are so much
| better than theres that I can promote services from .dev
| to .gov, I really have not thought that far ahead but I
| would love to discuss.
| mfkp wrote:
| I'm not a trademark lawyer so take this as you will, but
| the term Medicare has been trademarked since 1957,
| assigned to the Executive Director of the US Army.
|
| https://trademarks.justia.com/890/00/medicare-89000008.ht
| ml
|
| Just because you haven't run into a trademark issue yet
| doesn't mean that you will not in the future. And I don't
| think I'd want to be fighting the US Army lawyers for the
| naming rights.
|
| I love your initiative, but you may want to look into the
| naming issue a bit further (since this is what trademarks
| are explicitly designed for, to prevent confusion about
| one product/service doing the same thing under the same
| name).
| arionhardison wrote:
| So, from what I was told. It has to be shown with the
| actual extension. For example
|
| https://medicare.com/
|
| This i why I use medicare.dev and medicaid.dev and NEVER
| just use the naked terms.
|
| This is also what I have seen everywhere else, can you
| point me in the right direction on this? I really
| appreciate the input.
| mfkp wrote:
| I'll send you an email shortly with some details.
| vailprogrammer wrote:
| As someone with autoimmune issues who rarely checks HN
| but is very interested in your work, do you have a
| newsletter I could sign up for or an email address I
| could reach out to to receive updates on your work?
| arionhardison wrote:
| Yes, I also am dying to just talk to anyone about my work
| and what I am trying to do. I am very approachable and I
| CRAVE the most vicious, critical feedback that I can
| find. You can email me (email on profile) as the
| newsletter stuff will not be done for at least 1 month.
| fmagin wrote:
| Well, this was finally the thing that made me get an HN
| account, because I am really interested in talking with
| someone about that kind of stuff. I can't see an e-mail
| in your profile though, and as far as I understand noone
| can see your email you supplied in the email field, and
| your about section looks empty to me.
| arionhardison wrote:
| Fixed
| [deleted]
| kortex wrote:
| What in the everliving biohacking heck? I though I was
| leaning into things by modulating my caffeine levels based
| on workload (just dissolved in liquid and pouring out X mls
| based on need). I've thought about having a dispenser I
| could track metered doses with, but arionhardison here has
| a robotic pill press. Man, I gotta up my game now.
|
| I wouldn't be comfortable without some sort of closed loop
| to be reasonably confident it was dispensing what it
| claims. Also helps to have the active ingredient pre-
| diluted so you are mechanically capped at a certain volume.
| arionhardison wrote:
| I am using pre-diluted (or mash paste) in some cases, I
| have no idea how else to do it. I would actually need a
| mechanical weighting system and that would be really hard
| to manage. Moda was not really a liquid mixture but more
| of a paste at this point and I use stops in the vile. For
| example. Each vile has 5 stops and each stop has a MG
| associated with it. There are smarter ways of doing this
| im sure but they involve more ME than I know how to do.
| 542458 wrote:
| Wow. That's... bold. One suggestion, maybe have it email
| your dosing to a trusted person so a human being can at
| least establish whether the numbers look approximately
| right? Although that still doesn't cover any mechanical
| failures unless you've got a rock solid redundant closed
| loop setup. To be honest, the whole thing sounds ill
| advised, but I guess you already knew that.
| bentcorner wrote:
| I'd imagine having a strict boundary between "software
| thing that calculates how much you need" and "robot thing
| that mixes stuff together" would help, and you'd set up
| guardrails and unit tests on the calculation part.
|
| Worst case you could have physical guardrails such as
| "can't take more than x mg per week" in the form of only
| supplying a certain amount of raw materials and topping
| off intermittently. If you run out you find out sooner
| instead of a month later.
| arionhardison wrote:
| I am using a 5 stop vile system right now, I don't even
| know if thats a thing the big boys do or not but its the
| only way I knew to handle things without needing to using
| lasers or mechanical weighting systems; both of which I
| have not the least bit understanding of.
| arionhardison wrote:
| < unless you've got a rock solid redundant closed loop
| setup
|
| I do not I do not even know who I would send it to
| honestly. I am obsessed with this work now which is why I
| am expanding my provider network to other countries.
|
| I found that things I think are "experimental" are much
| more common overseas probably due to a lack of regulatory
| controls but the result is that there are really smart
| people with a plethora of knowledge about these things as
| where my western doctors were not that knowledgeable or
| willing to really listen.
|
| If you have any suggestions it would be awesome if you
| could email me.
| geocrasher wrote:
| This is horrifying, but interesting. Thanks for posting.
| Snoozus wrote:
| Having worked in research on Crohn's this sounds wild. Why
| would you not take the biologics if you can afford them?
| Side effects? What you do is of high risk to yourself and
| of no value to others.
| arionhardison wrote:
| Because they do not scale and they are not required. I
| would love to go into more detail if you shoot me an
| email we can discuss.
| Snoozus wrote:
| Let's discuss in public, I think others might be
| interested. What do you mean by scale? Are you saying
| that the biologica are too expensive and you are looking
| for cheaper solutions? Apart from the price AFAIK they
| are the best known solution.
|
| In that case hurting yourself trying to find sth. cheaper
| is not worth it, because: a) it is bad for you b) it
| doesn't help others either, since even if your special
| cocktail ends up working for you it will most likely not
| work for others.
|
| I would focus on making tnf-a blockers cheaper, probably
| by circumventing or straight out ignoring the patents.
| This stuff is not rocket science anymore.
|
| Have you researched the prices in other countries? Looks
| like in Europe its below 2kEUR per month but more around
| 20k in the us? Whats the price in India?
| ncann wrote:
| FYI he replied to your comment but replied to the wrong
| person here:
|
| https://news.ycombinator.com/item?id=27305183
| arionhardison wrote:
| > Let's discuss in public, I think others might be
| interested. What do you mean by scale? Are you saying
| that the biologica are too expensive and you are looking
| for cheaper solutions? Apart from the price AFAIK they
| are the best known solution. In that case hurting
| yourself trying to find sth. cheaper is not worth it,
| because: a) it is bad for you b) it doesn't help others
| either, since even if your special cocktail ends up
| working for you it will most likely not work for others.
|
| OK, lets start with just the official stuff that they
| actually admit.
|
| HUMIRA can cause serious side effects including hepatitis
| B infection in carriers of the virus, allergic reactions,
| nervous system problems, blood problems, heart failure,
| certain immune reactions including a lupus-like syndrome,
| liver problems, and new or worsening psoriasis.
|
| Do you see a trend here? Auto-immune treatment causes
| more auto-iummune diseases. Thats real sus to me.
|
| > I would focus on making tnf-a blockers cheaper,
| probably by circumventing or straight out ignoring the
| patents. This stuff is not rocket science anymore.
|
| You are actually trained at this and I am not but I do
| not understand why youy would focus on alpha when beta is
| far more cytotoxic. Like I said, I don't have your
| training but that seems odd given the rate of colo rectal
| cancer in Crohn's patients.
|
| Given that the entire family of drugs refers to Cytokines
| which is cell-death it seems a bit asinine to focus on
| alpha.
|
| > Have you researched the prices in other countries?
| Looks like in Europe its below 2kEUR per month but more
| around 20k in the us? Whats the price in India?
|
| India does not sell the name brand I am familiar with;
| they have Zydus' Exemptia and its around $4,500 USD.
|
| > What do you mean by scale?
|
| I mean scale. Given that N patients have Crohn's and wish
| to treat themselves with Z. If Z is a finite resource
| what are the obstacles to Z being produced and
| distributed at a "scale" great enough to reach each
| patient, for life.
|
| > it doesn't help others either, since even if your
| special cocktail ends up working for you it will most
| likely not work for others.
|
| Please provide some form of empirical evidence to support
| this position, I was saying in private because I have
| actual clinical outcomes that i can report form myself
| and a number of others, but doing so publicly is not
| ethical or legal; HIPPA and all.
|
| Can you expand a bit more on what you meant when you said
| you were a researcher? Possibly point me to a white paper
| or jupiter notebook, anything so that I may get a better
| understanding of your work.
|
| I do not even know how to begin to address the reductive
| nature of pharma disco and production "not being rocket
| science" other than to state the obvious, yes it's not
| rocket science its bio chem.
|
| I am sure i'm just missing something given that you work
| professionally in the field.
|
| FYI: It has nothing to do w/ the price at all, even on
| the worst medical/medicare plan humera is only 250 for 2
| viles and it was less, now it just has the extra lux tax.
| vangelis wrote:
| HIPAA doesn't apply in your case, but it would still be
| impolite without asking them.
| nemo1618 wrote:
| 600mg of modafinil will make you... _really_ wired, right?
| Did you notice that you were super productive that month?
| arionhardison wrote:
| tl;dr - Yes and yes.
| [deleted]
| pjc50 wrote:
| > do not manually create my mixtures because I do not want
| to know which version I am on,
|
| Double blind testing, in the "now unable to see in both
| eyes" sense?
| arionhardison wrote:
| LMAO, this was really funny. I did not really think of it
| as blind I just wanted to remove confirmation bias. I saw
| so much of that at goop. I have no formal training and I
| just learn on the fly and try to execute. I have no doubt
| there are better and smarter ways, I would love critical
| feedback here or via email.
| pjc50 wrote:
| I'm not sure I have any useful advice; I get the
| impression you're doing incredibly well for someone with
| no formal training. On the one hand you might benefit
| from someone with a more rigorous background helping you
| avoid known non-obvious risks, but on the other hand
| almost all such people are going to run screaming because
| your risk tolerance is way higher than theirs. Having a
| chronic condition for which the existing treatments are
| inadequate really sucks. I wish you luck and safety.
|
| (For the "era of higher risk tolerance", the good old
| "Ignition!" by John D Clarke is a fun read from the era
| when the official US rocket fuels programme consisted of
| just lighting stuff on fire and seeing what happened)
| scotty79 wrote:
| Maybe a buddy who knows what you are taking (but doesn't
| tell it to you) and provides a sanity check?
| arionhardison wrote:
| All of my "buddies" kind of abandoned me pre-pandemic.
| Much of what was driving me here was boredom, curiosity
| and solitude.
|
| The CEO/Founder at my old job used to kind of check-in on
| me from time to time via slack, she thought my work was
| cool which kind of helped me keep going once I was no
| longer at the company.
| KuiN wrote:
| What is a DDP? I tried searching but couldn't find anything
| that seemed relevant
| arionhardison wrote:
| Drug Discovery Pipeline
|
| https://www.google.com/search?q=DDP+drug+discovery+pipeline&.
| ..
| [deleted]
| pjerem wrote:
| I've not been physically hurt but lessons were learnt :
|
| A friend of mine once gave me an old computer (I don't remember
| exactly but it was some random Compaq running Windows 98 and this
| happened in ~2010). I installed some distro in it but tbh, it was
| barely usable.
|
| I decided it was a great opportunity to see with my own eyes what
| would happen when you intentionally << sudo rm -rf /* >>.
|
| Well, no surprise, it erases everything. Conscientiously.
| Recursively. Including the mounting point of the USB hard drive
| where I stored my hobbies projects. Including the network share
| of my other computer's /home.
|
| No real harm if you don't account the dehydration from sweating.
| rochak wrote:
| So much for curiosity. I still believe it must have been worth
| it though :)
| swiley wrote:
| In college I knew the GNU Coreutils rm had the --no-preserve
| root option and that my friends didn't know about this. So for
| fun I ran `sudo rm -rf /` just to show off or something.
|
| Unfortunately I had busybox rm earlier in my $PATH and it
| started chugging through my files.
| eCa wrote:
| Similar lesson a decade earlier: Linux seems interesting, how
| to install on my Windows machine? First step: Run fdisk. Done.
|
| The most painful part was the hundreds of photos I just had
| finished scanning. At least I got quite good at scanning
| photos..
| busymom0 wrote:
| > Including the network share of my other computer's /home.
|
| TIL network shares also get deleted in recursive deletions.
| Nextgrid wrote:
| Unlike on Windows where each drive has its own letter (so I
| don't think it's possible to create a path including all
| drives), in Linux the filesystem originates from "/" and any
| additional drives or network shares are "mounted" into
| folders within that parent filesystem, so recursively
| deleting everything from the parent would also affect
| everything else.
| teddyh wrote:
| Windows also has mounts onto subfolders.
| teddyh wrote:
| There's a reason that modern 'rm' has a "--one-file-system"
| option.
| Fnoord wrote:
| I remember doing something similar a long time ago (~22 years
| ago), and it'd actually stop removing files at some point
| because it deleted a file it required for the rm operation.
| Though I might be mixing it up with dd.
|
| And then there was that one infamous time in Debian libc broke
| in Testing/Unstable. Suddenly literally every application,
| minor or big, was broken (everything used libc).
| anovikov wrote:
| Haha a friend of mine once deleted a key to his Ethereum wallet
| with more than a million bucks worth of Ethereum on it, due to
| mistake in his script. That is as "hurt" as it gets :D
| mrlonglong wrote:
| On!y my pride.
| null0pointer wrote:
| Is there a reason why you might want to mix endianness within a
| file format? Wouldn't it just be extremely error prone as
| demonstrated in the article?
| its_nikita wrote:
| Yeah I was kind of confused about this when I was reading
| through the spec trying to figure out what went wrong. I wanted
| to touch on this in the blog post, but I wasn't able to find a
| good resource explaining the advantage for mixing endianness in
| a file format.
| cratermoon wrote:
| Because Microsoft.
| imoverclocked wrote:
| Well IBM+Microsoft but really... because 90s and x86.
| AnIdiotOnTheNet wrote:
| Because the important thing about those fields is that they
| aren't really big endian at all, they're clearly ASCII
| characters. Why the spec you have decided to say they were
| big endian is beyond me.
| JonathonW wrote:
| The WAV format is not mixed-endian; everything that's actually
| a number is little-endian.
|
| The fields the diagram in the article marks as "big endian" are
| ASCII text-- four-byte strings with specific content ("RIFF"
| for the first ChunkID, "WAVE" for the Format, etc.). If you
| wanted to treat those as integers in your code, you'd need to
| treat them as big-endian so their byte order doesn't get
| reversed, but they're really four-byte sequences, not numbers.
| AnIdiotOnTheNet wrote:
| But they could have just as easily said the integer value for
| "WAVE" was 0x45564157 in LE and been perfectly consistent.
| seoaeu wrote:
| Obviously not ideal, but it could for instance come up when the
| file format has one overall endianness but wants to include
| fragments of data conventionally encoded with the opposite
| endianness. Trivial example would be a .tar file containing an
| assortment of other files, but this would also include say
| embedding network endian data or images within a larger file
| that contains other data.
| gizmo686 wrote:
| I've had this come up with composite data formats. If your data
| formats includes already existing data formats and they do not
| all agree on an endianness you are basically stuck with being
| inconsistent about it.
| gfodor wrote:
| If you work in VR odds are you've made yourself vomit via code at
| least once.
| sterlind wrote:
| I made a janky AR rig with a webcam taped to an Oculus DK2 as
| part of a hackathon. My code ran at 15fps. after taking off the
| goggles, my _vision_ was 15fps.
| sp332 wrote:
| If anyone has trouble with normal (not-obviously-broken) VR, I
| recommend Yoga for Building VR Tolerance.
| https://web.archive.org/web/20190813004505/http://elevr.com:...
| The research organization ran out of funding but IMO they had
| some groundbreaking stuff. Thank goodness for the Internet
| Archive at least.
| tekromancr wrote:
| I used to have a big CNC router. Like, one that you could mill a
| whole door on, if you wanted to.
|
| One day I thought it would be a cool hack if I could rig up an
| Xbox controller to send movement commands. Long story short I
| managed to snap the bit by moving too much after a plunge cut. No
| safety glasses or anything; but a day or two later I did find
| some shrapnel from the bit embedded in a piece of foamboard I had
| near the machine, so that was cool...
| habibur wrote:
| Was trying to control a 2 ton weighting diesel generator from my
| code and a few relays.
|
| Didn't go right.
| exikyut wrote:
| This sounds very interesting. What happened?
| jakecodes wrote:
| I always wanted to make an electric skateboard. After a few
| successful iterations, I decided to make a really fast one that
| could replace a car. I built my own lion battery out of ~500
| 18650s. It could go about 30 miles on a charge. It could go about
| 50mph. It was a very wide body with huge air filled tires. It
| could pull 10 of my friends up the steepest hill. It was very
| powerful because I installed an electric motorcycle engine on it.
| My one extra stupid move was I didn't account for the battery
| dying at high speeds. Normally I'd stop well before an empty
| battery but I only had 3 LEDs of primitive battery indication.
| And that only measured with voltage. Voltage fluctuates wildly in
| motorized vehicles. It died while only going about 20mph but up a
| steep hill. The sudden loss of forward momentum flung me off the
| board into the pavement where I flipped a few times and scrapped
| across the pavement for a while. Was a painful lesson.
| castis wrote:
| I've been slowly building a homemade quadcopter over the last few
| years. One of the first times I tested it out it with all 4
| motors it immediately headed my direction and caught me in the
| ankle before I could get out of the way. Nothing a bandaid
| couldn't fix but it sure sucked.
|
| It's tethered to a test-stand now.
| wging wrote:
| Oof. I didn't realize "harm" was meant so literally. At least it
| was a one-time thing, though... right? I read "had several
| thousand WAV audio files that I generated" and expected to read
| something of the form "I corrupted several thousand important
| data files irreversibly".
| its_nikita wrote:
| Haha yeah. I've definitely "harmed" myself in the form of time
| lost from deleting files/messing something up on my computer,
| but I think this was the only time I've actually experienced
| physical pain from my own bad code.
| kybernetyk wrote:
| Yes, I gave myself tinnitus while working on audio code.
|
| Turns out debugging audio code and wearing headphones is a bad
| idea when your code sometimes randomly generates sample value
| changes from -1.0 to 1.0 :o
| bacon_waffle wrote:
| At a very "lean" company that made power electronics (modular
| telecoms rectifiers and 1.5-5kW grid-tied solar inverters), I
| nominally worked as a test engineer but I wound up doing a fair
| bit of EE/firmware work on the products too. Above my bench was
| that typical drop ceiling stuff like in offices worldwide, except
| mine had little singed bits of semiconductor packages stuck in it
| from where things had gone wrong in testing and blown up
| transistors and such. All of us who worked with open electronics
| (often necessary during development, for probing or whatever) had
| earmuffs and safety glasses at the ready, and a wood stick for
| pushing the on/off switch. AFAIK there weren't any real injuries,
| but there certainly was potential.
|
| My favourite near-miss was the result of a dumb EE experiment,
| not really code: I had built an 8kV surge generator to test
| against IEC 61000-4-5, and needed to test the generator itself.
| We spent an afternoon finding interesting components to blow up,
| at first under a shield, but the good ones would just make a
| satisfying snap or pop - not too exciting from a kinetic
| perspective. Then, I noticed a DVD... The surge through the foil
| in the DVD made one of the loudest bangs I've ever heard - easily
| louder than a gunshot - the foil vapourised and sent plastic
| shards all over the office.
|
| The surge generator itself was a glorious hack; it used a neon
| sign transformer to generate the HV, and the main switch was a
| trigatron I made from a couple doorknobs from a home recyclers in
| the same industrial park.
| ehershey wrote:
| I enjoyed this. In particular the drawn diagram and:
|
| > Look at an audio file's waveform before playing it at max
| volume.
|
| That's always good advice.
| zardaxian wrote:
| I was building an underwater mapping GUI, a quick SCUBA dive to
| do some testing before the weather closed in whilst at sea in the
| GBR Australia.
|
| Dropped to 10 meters, set the datum and started swimming, going
| well until I crossed into a negative quadrant. My beautiful track
| went haywire/dead.
|
| Then I swam around trying to get back "into" the positive
| quadrant, I couldn't find it and consequently couldn't get back
| to the datum. When I surfaced I couldn't see the dive boat!
|
| After some time contemplating my life/coding choices for
| literally jumping in without thorough testing, I heard the Zodiac
| inflatable buzzing around the rising waves looking for me.
|
| Back on the boat I discovered that I had only coded it to work in
| the positive axis from the datum. In the other axis the location
| was undefined.
| enchiridion wrote:
| Hardware projects are so far from my norm, something like this
| is hard for me to imagine.
|
| What kind of devices are involved in scuba tech like that?
| zardaxian wrote:
| Not much. A floating GPS antenna on a self tensioner, tablet
| in a housing. And some buggy code :) Good enough for swim
| lane mapping and preventing holidays (unsearched areas).
| Another system we worked with used ultrasonic positioning
| from beacons, very accurate and covert.
| tclancy wrote:
| Great story and it made me realize that usage of "holiday"
| is more general than how I thought of it (missing a spot
| when painting). Which led me to http://www.word-
| detective.com/2010/12/holiday/
| diveanon wrote:
| Do you normally dive with a compass?
|
| For similar reasons I usually dive with an analog backup gauge.
| Hnrobert42 wrote:
| You likely already know about inflatable bouys and/or no longer
| need them, but just in case:
| https://www.scuba.com/products/scubapro-marker-buoy-orange?v...
| pjc50 wrote:
| The "system doesn't work with negative datum" bug allegedly hit
| F-16 flight control software, resulting in a plane that would
| flip upside down on crossing the equator.
| contriban wrote:
| They _are_ upside down down there, so it was a reasonable
| feature.
| SamBam wrote:
| Right, it was trying to keep them upright. Northerners'
| bodies aren't designed to work upside down...
| mleonhard wrote:
| Apple Airpods Pro protect users from over-loudness.
|
| iPhone has an option to enable this protection for all headsets,
| but it doesn't work properly. For example, when answering a
| FaceTime Audio call with Bose SoundSport, the "call connected"
| tone often plays at max volume and is staticky. This is with the
| latest firmware and iOS.
|
| macOS has no over-loudness protection.
|
| Bose's expensive noise-cancelling headphones do complex audio
| processing but fail to protect users from over-loudness. I think
| the company has lost its ability to focus on user needs. Over the
| last 10 years, only their noise-cancelling function has gotten
| better, but other aspects of their headphones have gotten worse.
| Features I want in my next headset:
|
| - active noise cancelling
|
| - loudness protection
|
| - swappable battery
|
| - physical buttons
|
| - mic windguard
|
| - stowable boom mic so I can talk quietly on a call and still be
| heard
|
| - an option to automatically pause music when I take off the
| headphones and resume when I put them on
|
| - an option to automatically enable or increase noise cancelling
| when the environment becomes noisy and disable it again when in a
| quiet space
|
| - Automatically detect me speaking and pipe my voice through the
| headset so it feels natural, even when not on a call.
|
| - Work properly in extremely noisy environments. When I wear my
| Bose QC25 noise-cancelling headphones while riding the BART
| subway in San Francisco, the headphones emit painful crackling
| sounds when the train noise is very loud. I don't expect the
| headphones to block extremely loud sounds. They should not make
| the noise worse. Bose's headquarters is in downtown SF. I expect
| some of the firmware engineers ride BART every day. Does anyone
| know why they haven't fixed this in 7 years?
| ffffwe3rq352y3 wrote:
| I don't understand why this isn't a common thing
| _everywhere_??? I 'm not a headphone designer but the "loudness
| protection" seems like it would be trivial to add! For some
| reason that idea never occurred to me but its a good one.
| GuB-42 wrote:
| It didn't happen to me personally, but I worked on a flight
| simulator. Not the fancy kind which moves around but it still
| used hardware from the real cockpit, including the stick and its
| actuators.
|
| And if the controller is not properly initialized, the stick will
| slam left and back, hitting the leg of the guy in the pilot seat.
| For men, it can be much worse...
|
| Another bench had a real aircraft gun mounted on a turret that is
| also controlled by software. No ammunition of course, but it is
| still a big metal pipe swinging around at great speed,
| thankfully, that one was fenced because that's the kind of thing
| that can easily break bones, maybe even kill you on a bad hit.
| [deleted]
| swader999 wrote:
| My first ten minute as a lab instructor in a full intro to
| computing class. I was standing talking and backed up a bit
| stepping on the leg of my swivel chair. I fell right on my ass
| hard. Cracked a joke but the whole class of about forty students
| didn't laugh or say a word. Was rough and I was showing some code
| at the time and I blame this on the code to this day.
| JoelMcCracken wrote:
| tl;dr I got myself banned from #emacs accidentally because of a
| bug in my code.
|
| One time I was writing a little emacs lisp module to
| automatically reconnect me to #emacs on freenode, but it was
| buggy, but it was still in my .emacs at the time, so when i
| restarted emacs, it started running, and I didnt notice it.
|
| fast forward a little bit, i notice the irc buffers open in my
| list of buffers, and lo and behold, my code was constantly
| disconnecting/reconnecting in #emacs and it was spamming the
| channel with those messages. They banned me (briefly) so it would
| stop.
|
| It was just funny to see like a flood of connects/disconnects in
| the chat log, and people being like "whats going on" and "must be
| a bug in something".
| ja27 wrote:
| Not exactly but I've been mashed, crushed, cut, scraped, shocked
| (static), etc. many times by the FIRST robotics team robot I
| mentored as code ran haywire.
| liamkinne wrote:
| One time I got run over by my FRC robot causing me to shout a
| profanity around a bunch of probably very disappointed adults
| at the competition. Not my proudest moment...
|
| The story is we were testing some autonomous code I wrote and
| it stopped moving because it was hanging waiting for on some
| sensor data. Without remembering to disable the robot first, I
| walked over to it and found the sensor wasn't plugged in
| properly. Plugging it in, the code started running again and
| proceeded to drive up and on to me...
|
| Nowadays that I work with industrial robot arms (specifically
| ones with 24,000 RPMs of death on the end of them) I am very
| aware of how important safety practices are knowing how easy it
| is to slip up.
| schainks wrote:
| Every time I git blame on code that needs to change and realize
| it's my code. So much for write once, run forever!
| Yenrabbit wrote:
| I tried to automate mouse moves, keystrokes and screenshots to
| take a higher-res picture of an area in Google Earth. Something
| went wrong and it got out of control. My attempts to stop the
| script were futile as the automated mouse steered me away from
| the code window. The spinning, gyrating earth rapidly made me
| seasick - had to close my eyes and fumble my way to the power off
| button. Stretching 'hurt' but it was a memorable code fail
| nonetheless :)
| ajuc wrote:
| Detecting silence by searching for 0 isn't the best idea, even
| without endianness bugs.
|
| Silence is when the value doesn't change, no matter what it is.
| Noise is when the values change, the more they change - the
| louder the sound.
|
| So a wav file filled with "ffff" is just as silent as one filled
| with "0000".
|
| And a wav file filled with repeated "00003333" is louder than one
| filled with repeated "eeeeffff".
| imoverclocked wrote:
| A long time ago in a university far-far away, I stayed up for
| several days straight writing code for an aerial robotics
| platform. I was so focused on writing this code that even my
| dreams were trying really hard to be expressed in perl. I woke up
| extremely tense and in a sweat because I couldn't figure out how
| to express a strong emotion in perl.
|
| As for the harm, well ... that code led to a marriage which
| catastrophically failed. Lesson learned: keep code and emotions
| away from each other.
| [deleted]
| cratermoon wrote:
| I accidentally fork-bombed the machine I was working on.
| labster wrote:
| Luckily, they were able to land the plane in Minsk.
| ghostpepper wrote:
| A few years ago, I ordered the cheapest six-axis robotic arm from
| ebay for about $100 that came with basically no software or
| motor-driver boards, so I did it all from scratch with a PCA9685
| board, a basic kernel driver and some very hacky scripts from
| user space.
|
| One day I had some friends over for a glass of wine, and wanted
| to show off my creation. I invited them into my "lab" and placed
| my wine glass down on the desk so I could type a few commands
| with both hands.
|
| My rudimentary software had some motion smoothing once it was up
| and running, but upon initialization, if the arm was
| significantly displaced from where it had been when it was turned
| off, the PWM board would instruct the motor to immediately "be"
| in a position that required the arm to travel clear across the
| desk in effectively as little time as possible.
|
| In this case, where it had been previously happened to be where
| my wine glass was now, and the flimsy aluminum at high speed was
| enough to shear the stem from the glass and explode the bulb.
| Luckily the wine didn't get in any sensitive electronics, but I
| learned a valuable lesson about the difference between messing
| around with hardware vs software.
| 0xfaded wrote:
| We had a scary and quite overspec'd arm acquired cheaply in the
| early history of a startup. We we're able to control it via the
| serial interface, but similarly to you we had no documentation
| and everything had been reverse engineered. The thing was
| surrounded by e-stops.
| Mauricebranagh wrote:
| I remember in college (mech ENG BTECH) I had a coursemate who's
| day job was a programmer on the CNC side.
|
| She mentioned that this had happened to a v high end CNC
| machine the cutting tool after a power cut went straight to the
| home position very $$$$$$$
|
| At my place we had a computer controlled wave tank and as the
| guy I shared an office with said you could program the ram to
| go full travel in zero time which would have flooded the lab.
| Agentlien wrote:
| At my first job we once developed our own controllers with
| haptic feedback for our surgical training simulation. It was
| amazing how realistic the feel was.
|
| The motors were quite powerful and there were a few close calls
| which really made you think.
|
| It used to twitch violently as it was calibrating on
| initializing. Once, it reset and did that while testing.
| Luckily the person holding it managed to get his hands out of
| the handles on time.
|
| Another tim the tip of one instrument had broken off and during
| initialization there was an error in the force applied in the
| direction along the shaft. It flew out like a rocket.
| isatty wrote:
| I used to do robotics, I can tell you that the fact that it was
| the cheapest or the most hacky does not matter in the least.
| Everything can and will go wrong, even the priciest and well
| documented part.
|
| I used to have multiple clamps around the controller, message
| bus, the firmware and also a physical barrier, and yet would
| not feel safe with my fingers or person around moving parts.
| monocasa wrote:
| Used to work in robotics. The QA folk were obviously very
| much sticklers for the full process of enabling the hardware
| interlocks before getting near the moving bits. One time a
| manager got mad at them for taking so long going through the
| full interlock process while repeating a failure mode. He
| therefore went up to the machine saying "look, it failed so
| it's stopped, that's how the code works!" At that point our
| beta version of our CI requisitioned that bot (as the
| interlock wasn't the only process corner that the manager was
| trying to cut the bot wasn't marked as reserved in the CI
| system), it started initializing and broke his arm.
|
| I'm just glad that ultimately he was the only one who faced
| physical consequences for his poor choices. And thankful that
| the consequences weren't that bad at the end of the day; a
| broken arm is way better than a cracked open skull.
| neilv wrote:
| I hope that the arm healed well, and that, after the
| painful demonstration, everyone in the organization was
| fully onboard with workplace safety protocol.
| monocasa wrote:
| Yeah, the arm healed great, and whole situation (plus the
| subsequent "N Days Since a Limb Mangled" sign)
| contributed greatly to the manager's humility and respect
| for safety.
| Digit-Al wrote:
| > plus the subsequent "N Days Since a Limb Mangled" sign
|
| That made me actually lol.
| CoastalCoder wrote:
| Oddly enough, I'm _right now_ watching Shake Hands with
| Danger[0].
|
| [0] https://www.rifftrax.com/shake-hands-with-danger
| CoastalCoder wrote:
| Out of curiosity, what was that manager's attitude towards
| safety afterwards?
|
| I would assume he'd be the poster-child for following
| safety protocols after that. But I'm still learning a lot
| about human nature.
| monocasa wrote:
| A lot of the toxic pressure that pushed the manager in
| that direction still existed, but a light hearted floppy
| arm joke served well to remind everyone relevant of the
| state space of outcomes.
| Doxin wrote:
| I don't work in robotics so I might be entirely off-base
| here, but surely the interlock process would consist of
| hitting an E-stop somewhere? What was this process that
| took long enough for said manager to get annoyed with?
| jdiez17 wrote:
| You usually only hit the E-stop when the robot is moving
| in a way that could be dangerous. Safety interlocks are
| intended to minimize the probability of such a dangerous
| situation. The robot won't move unless all of the
| interlocks are outputting a "go ahead" signal. The most
| common interlock is a (switch/laser/hall effect
| sensor/whatever) that detects the door to the robot cell
| is closed.
| monocasa wrote:
| That cut power and the robot needed to fully recalibrate
| afterwards which took time while iterating trying to
| replicate a defect.
| Aeolun wrote:
| I assume you still need it to move, not be entirely
| turned off?
| ta988 wrote:
| I worked for a car company. We had robots for mounting
| parts. Big robotic arm several tons of pressure possible. I
| was part of the maintenance team, we get an alert for a
| robot malfunctionning. Coming in the area we see
| screwdrivers cleverly placed in all the safeties. And a guy
| trying to tweak the robot that was slowly moving...
| faeyanpiraat wrote:
| Could you please elaborate? I don't fully understand
| what's going on with the tweaking?
|
| Is he next to the malfunctioning robot?
| ta988 wrote:
| He was next to the robot (like his hip touching it)
| trying to do we never knew what with his hands on the
| robot. And the robot was moving of course all securities
| were disabled and it was in a kind of. debug/manual mode)
| He was also just an operator from the next stage of
| production, so he was not supposed to be here at all. We
| checked everything and ran the calibration and validation
| procedures and they went through so maybe he did repair
| it in the end.
| hutzlibu wrote:
| I think the malfunctioning was the guy shutting down
| safety meassures intentionally with screwdrivers?
|
| In other words, some person did something very stupid,
| while thinking he is clever.
| ta988 wrote:
| Not just that, going next to it with securities off.
| Gravityloss wrote:
| Some small metal pressing machines for example have two
| buttons, one on each side of the machine. You have to push
| them both for the machine to operate. This means your hands
| can't be squished.
|
| Or a dental x-ray machine has the final "run" button in the
| hallway so the nurse taking x-rays must go there to do it, so
| they don't get repeated exposure.
| allo37 wrote:
| If you want to manually operate an industrial robot via its
| controller, you usually have to squeeze a "deadman" switch
| or else the robot will engage its brakes. What's neat is
| that the deadman switch is a 3-position switch: They
| discovered that when people panic they either let go or
| squeeze harder, so both actions stop the robot.
| cafard wrote:
| A shirt-tail relative worked on a metal press in the one-
| button days. It cost him part of a finger or two.
| myself248 wrote:
| > A shirt-tail relative
|
| What does this mean?
| zerocrates wrote:
| It's another way of saying a distant relative.
| msrenee wrote:
| There's lots of safety mechanisms like this in
| manufacturing. I've also seen "light curtains" which are
| essentially 2 bars on either side of a hazard. If anything
| crosses that plane, the machine stops automatically. There
| are also pressure pads. For one type, you have to be
| standing on for the machine to operate so that you are in a
| safe location when it starts. For the other, the pad covers
| the danger area and the machine will not operate if there's
| any weight detected. Trying to think of any others I've run
| into. It's actually pretty interesting stuff. You've got to
| keep in mind that the operator is liable to be in a hurry,
| tired, stupid, or any combination thereof.
| gxs wrote:
| Another one is machinery where you have to "enter" the
| machine to do maintenance. Think industrial ovens.
|
| You're supposed to turn off the circuit breaker and lock
| it with your own personal lock that only you have the key
| to. That way no one can turn it on even if they wanted
| to.
|
| I've heard no one, under any circumstances is allowed to
| take the lock off. If the person leaves after their shift
| and forgets to take it off for example, they have to come
| back in the middle of the night so to speak and take it
| off.
| ta988 wrote:
| These make the worst horror stories I've read from
| various safety organizations. Tanks with gases (nitrogen
| is particularly sneaky), ovens, radioactive sources... If
| you want to learn about industrial risks based on real
| stories watch the CBS videos
| https://m.youtube.com/watch?v=f2ItJe2Incs
| agency wrote:
| I think this is called lock out tag out
|
| https://en.m.wikipedia.org/wiki/Lockout-tagout
| mdturnerphys wrote:
| Not just equipment you have to enter. This is used in
| situations with "stored energy" or other systems that
| need to be turned off or otherwise disabled for safe
| maintenance. There are multi-lock hasps that can be used
| if multiple people have overlapping needs to lock out the
| system, and other devices such as valve handles covers,
| etc., that help with locking out components don't have a
| built-in place for a lock.
| bananapear wrote:
| An example, not a nice way to go -
| https://www.bbc.co.uk/news/uk-england-merseyside-32050998
| ta988 wrote:
| A recent one in US https://www.nbcnews.com/news/us-
| news/bumble-bee-pay-6-millio...
| msrenee wrote:
| As someone else mentioned, that's a lockout-tagout
| procedure. Very common when doing any kind of maintenance
| on a machine. You isolate the power sources and place a
| personal lock on it to which only you have the key. It
| usually has your name and an ID number written on it. The
| lock cannot be removed by anyone else. If you, for
| instance, forget to take your lock off and go home, it's
| a very long process where they have to get someone high
| enough up the chain to get in contact with you and either
| get you to come back or confirm that you're safely a long
| way away from the machine before they can cut the lock
| off. This makes your management very unhappy and most
| places that I've worked will write you up for leaving
| while the equipment is still locked out if maintenance is
| finished and it's safe to operate.
|
| It's not only electricity that needs to be isolated and
| locked out. A lot of machines use air pressure to operate
| moving parts, so in that case you'd have to isolate all
| electrical sources as well as the air. The machines I
| usually mess with require 2 locks. Some of the machines
| I've seen can require 6 or more locks to be fully locked
| out and safe to work on.
| zentiggr wrote:
| When I served on a submarine, tagout procedures were
| followed to the letter.
|
| A typical maintenance period might require 100 or so
| separate tagouts, each of which could require anywhere
| from one to dozens of tags. Each duty watch was required
| to show up early enough to go through the entire tagout
| book and at least know the gist of what was in progress.
|
| Finding a loose tag was an automatic all hands all work
| stoppage, until it was tracked down and resolved. No
| questions, even if your work was in a different
| compartment, or had no logical connection to what he tag
| was for.
|
| Each new tagout request had to be signed off on by at
| least three people, sometimes all the way up to the
| captain and not just a foreman or supervisor but one or
| more shop heads.
|
| Seawater system tagouts on a floating sub were serious
| business.
| akiselev wrote:
| Another awesome safety system is the SawStop which uses
| the conductivity of skin to monitor for contact against
| the blade in a tablesaw. If it detects contact a small
| explosive charge goes off, instantly sending a block of
| aluminum into the path of the blade, stopping it dead.
| Even a serious accident like leaning with an elbow
| against a moving blade is likely to result in little more
| than the scratch from hitting a stationary sharp object
| rather than decapitation.
|
| Sadly the inventor couldn't convince the tablesaw
| manufacturers to use his invention for cost and/or
| liability reasons so he had to make his own. Their
| tablesaws themselves are relatively expensive but cost
| per accident is $100 for the charge plus whatever the
| blade costs, so basically $200 to prevent serious injury
| or death.
| ArchOversight wrote:
| The biggest problem with the saw stop is that wood when
| it is even slightly moist can set it off.
|
| So on a worksite if you are using lumber that hasn't had
| adequate time to dry the saw stop would trip even without
| any limbs being in danger.
|
| Each time it would destroy itself, you would have to take
| the saw apart and change it which would cause a work
| stoppage.
|
| What irks me the most is that the SawStop owner tried to
| create legislation that would have required companies to
| use his product.
| lcuff wrote:
| Current saw stop units do have an over-ride switch so
| that if you know you're going to cut questionable wood,
| you can disable the safety mechanism for a series of
| cuts. (The safety mechanism comes back on if you power
| the table saw off, then back on.) But of course you don't
| know advance for sure if the piece of wood in hand will
| trigger the safety mechanism or not.
|
| Not everybody's cup of tea, but our ability to be
| 'present' is highly variable, both person-to-person, and
| one person over time. I'm a somewhat daydreamy sort of
| person, so I work to bring focus when I'm using power
| tools. As a hobbyist I walk out of my shop when I get
| tired, emotional, or otherwise distracted, but that's not
| an option for everyone.
| yetihehe wrote:
| "Check mode" with stopped saw and light/buzzer instead of
| brake would be pretty good for such cases (unless wood
| has some internal moisture).
| akiselev wrote:
| Do you know what moisture level sets it off? I didn't
| even think about that - it's easy to take Southern
| California's weather for granted. Here it's either pretty
| much ready from the lumberyard or you got it right off
| the mill's truck so it has to sit for a few days/weeks.
|
| The lobbying is off putting, yes, but at least his greedy
| self-interest would do some actual good instead of
| extracting evermore capital from everyone. Powertools
| inhabit this uncanny valley of dangerous equipment where
| they're cheap and accessible enough to the average joe
| (compared to CNC machining centers or forklifts or
| whatever) yet powerful enough to do some real damage. My
| understanding is that the primary reason the major
| manufacturers didn't want the SawStop wasn't cost but the
| fear that it would expose them to _more_ liability by
| making the tools seem less dangerous. I really wish it
| achieves mass adoption so that the price drops even
| further.
| sharedfrog wrote:
| According to this video[1], moisture setting it off is a
| myth.
|
| [1] https://www.youtube.com/watch?v=NV6Jhw0hhBI (at ~3
| min)
| VLM wrote:
| Thankfully the patents are starting to expire in 2024.
| Nothing holds pack progress quite like the patent system.
|
| The problem with causing $300 of destruction and lost
| work time vs possibly saving a limb is there's no fine
| woodworking operation or framing carpentry operation that
| requires a table saw. Technically if you feel unsafe
| working with a table saw you can do absolutely everything
| very slowly and tediously with a router or router table
| or bandsaw, or manual tools like a chisel and hammer.
| Anyone concerned about safety doesn't use a saw stop,
| they use an entirely different technology than a table
| saw. If you make a table saw too safe or too expensive to
| actually use, people will simply use something else. The
| death toll may or may not be lower...
|
| From a marketing perspective, the people most likely to
| buy a saw stop because they're scared of table saws will
| save a lot of money by not buying either sawstop or table
| saw, and they'll cut dado slots using a hand held router
| (more dangerous in a different way) or break down plywood
| using a tracksaw (unholy expensive and many crushed foot
| injuries) or cut beveled edges on a router table or
| zillions of alternatives. Meanwhile the people who don't
| care about safety because they're not drinking on the job
| or they actually use the substantial amount of safety
| gear that makes a table saw perfectly safe OR they only
| do operations on the table saw that are inherently safe
| by nature (as opposed to relatively low risk operations,
| and some very high risk operations that people do
| anyway), will continue to save a lot of money by the
| combo of not being dumb and not buying sawstop. Finally
| the real dumb woodworkers who get drunk and get hurt or
| simply don't care, will continue to not care and not buy
| sawstop and will not live too much longer in a world
| either with sawstop or without table saws anyway, so its
| not like the world will net improve, the Darwin award
| winners will continue to win Darwin awards. So sawstop is
| a VERY hard sell.
|
| A similar problem is well manufactured table saws are
| safer than homemade table saws. The concept of "put a
| round blade on a motor" is too simple to legislate out of
| existence. So making table saws illegal wouldn't
| eliminate table saws it would just mean the homemade ones
| will make table saws, on average, more dangerous.
|
| Arguably, radial arm saws are more dangerous than table
| saws and "the marketplace" effectively eliminated those
| decades ago, so its not like the marketplace dislikes
| safety or whatever.
| gknoy wrote:
| > Meanwhile the people who don't care about safety
| because > they're [never doing unsafe things]
|
| This sounds an awful lot like suggesting that skilled
| users of firearms don't care at all about safety because
| no one's going to deliberately do stupid stuff. It seems
| farcical to me. Just as with firearm safety rules,
| they're there to protect people from the rare moments
| when we are inadvertently NOT careful. History has shown
| that people DO do stupid stuff because they were thinking
| about something else, or were tired, or distracted --
| hence why every firearm is treated as loaded, even if you
| unloaded it, and why weapon safeties exist.
|
| For table saws, having a sawstop helps prevent situations
| that you don't have fill control over from having bad
| consequences. Of course you'd still use all the same
| safety measures you normally would without one.
| VLM wrote:
| Most firearms accidents happen during normal operations
| like carrying, cleaning, disassembly, and so on. In
| comparison table saws are extremely versatile and can do
| many operations some of which categorically prevent
| entire classes of accidents. For example I have a
| commercially made box cutting jig with various shields
| and guards and its not physically possible to stick my
| fingers in the blade during operation. If as you claim my
| mind drifted and I did stupid stuff, by physical design
| of the operation its impossible to hurt myself.
|
| There's another class of accident involving equipment.
| Some people do not store firearms with trigger locks or
| unloaded in safes or whatever. Likewise there's an
| analogy with table saws where I don't rip small boards
| without a nice featherboard, riving knife, and some
| really nice plastic pushsticks. If as you claim my mind
| drifted, this time by use of tools it would still be
| physically impossible to hurt myself.
|
| There is a class of inherently dangerous operations where
| no safety tools exist but the table saw is so versatile
| and flexible people can successfully do the operation...
| most of the time. My point is instead of spending more
| money to build a "better" tablesaw to do something dumb,
| simply invest the money in a COTS bandsaw or track saw or
| jigsaw hole cutting jig or chainsaw or planer or whatever
| crazy risky thing there's a better, faster, safer tool.
| You can do dangerous things with a table saw but there's
| always a better safer faster way to do it with a
| different tool. Taking away money by making the required
| table saw more expensive just means the woodworker will
| not be able to afford the superior even safer tool for
| the job.
| akiselev wrote:
| Ha! You described me to a 't' and all that makes sense.
| As a programmer I didn't want to risk my fingers even
| with a SawStop cabinet so I invested the money in a
| Festool tracksaw and Domino instead. No crushed foot
| injuries yet but man I wish I had a tablesaw to cut thin
| pieces from stock that aren't wide enough to fully
| support the track.
| ta988 wrote:
| It is not all moist wood. It depends on the specie, type
| of cuts, etc. Thats capacitive sensing so it depends on a
| lot of parameters.
| ajford wrote:
| Or they went about developing their own systems. Bosch
| made their own system that didn't involve slamming a
| brake into the blade, but SawStop decided to throw some
| money around and get an injunction against it.
|
| All the evidence I've found is super cloudy, but early
| reports indicated Bosch's variant predated SawStop's
| release.
|
| Luckily SawStop's patents expire in a few years so
| hopefully we'll see other safety mechanisms similar to
| SawStop without the downsides and greed.
| ArchOversight wrote:
| I have no idea on the moisture levels that cause it to be
| set off, I just remember reading/watching a video about
| it because at first it seemed like technology that SHOULD
| be widely used and implemented. When I first learned
| about it I thought it was a great idea.
| ta988 wrote:
| I've seen it save a hand. I also noticed quite a few
| triggers, but it saved a hand so that was worth it.
| sharedfrog wrote:
| > The biggest problem with the saw stop is that wood when
| it is even slightly moist can set it off.
|
| Is there any proof of this? From my understanding, that's
| a myth. Demonstrated here at about 3:00
| https://www.youtube.com/watch?v=NV6Jhw0hhBI
| myself248 wrote:
| The one at our *kerspace has tripped numerous times on
| damp wood, laser-cut wood, shiny laminates that didn't
| register as metallic but apparently it was a full moon
| that day or something, etc.
|
| It's also saved a few legit fingers, so it's still a net
| win, but you've got to have pretty deep pockets to cover
| all the false trips.
| sharedfrog wrote:
| I see, thanks!
| ta988 wrote:
| It is true, laser cut wood and burnt wood in general also
| sets it off. However on all saw stop saws I've used you
| can disable the safety when you have to cut those
| materials.
| CoastalCoder wrote:
| One thing I'm still unsure of regarding table saws: is
| there really much risk of injury if you follow all of the
| typically recommended safety practices?
|
| Every tablesaw injury I remember hearing about involved
| the operator failing to follow some of those guidelines.
| zentiggr wrote:
| This goes back to the basic point of safety work: Even
| the best trained, most attentive and careful operator can
| get into dangerous situations. There's no way to
| anticipate the moment that their attention might wander
| or some external circumstance might just force the
| situation.
| confidantlake wrote:
| If you do everything right there is not much risk. But I
| have never met a human who does everything right 100% of
| the time.
| ta988 wrote:
| You can't avoid rare events like a wood piece breaking
| and things like that. I'm much more worried of angle
| grinder for example.
| ecpottinger wrote:
| Is there anyway to do it magnetically using inducted
| currents? I doubt you can stop the saw that way, but you
| should be able slow the blade down so it does not do as
| much damage.
| adrianN wrote:
| A tablesaw goes through a finger as if it is nothing.
| Fingers can move at speeds of dozens of centimeters per
| second. So anything that takes longer a dozen
| microseconds to stop the blade will not be good enough to
| let you keep your finger.
| mustacheemperor wrote:
| >one type, you have to be standing on for the machine to
| operate so that you are in a safe location when it starts
|
| Of course, the weakness of a system like this being if
| middle management is demanding unachievable timelines
| and/or people in the shop are willing to cut corners,
| someone can leave a box of heavy stuff on the pressure
| pad to "save time." Absolutely right that all these
| systems need to be resilient to operator tiredness etc
| andi999 wrote:
| I know a guy who taped on of the buttons to work faster for
| the bonus.
| inter_netuser wrote:
| Not quite robotics, but some of our servers kept powercycling
| , had to plug in the physical terminal.
|
| It was close to lunch, so I kept eating.
|
| The finale was a jar of mayo spilled into the guts of a 50k
| server. Best mayo I ever had.
| metafunctor wrote:
| What kind of server room allows you to bring food?
| sneak wrote:
| One that employs people who think eating mayo out of a
| jar on a ledge next to an expensive server is a
| reasonable way to work?
| nexuist wrote:
| I mean, there's a reason why pain is involved in this
| story.
| defen wrote:
| OP said a jar of mayonnaise spilled into the server, not
| food.
| mekkkkkk wrote:
| Which makes it even more confusing. Were they preparing a
| sandwich on top of the server? Did they eat mayonnaise
| straight from the jar? The condiment plot thickens.
| montroser wrote:
| And more mystery: Where I'm from, mayonnaise is viscous
| enough that it doesn't _spill_ out of anything...
| johnchristopher wrote:
| Oh, I have to introduce you to some of our finest subway
| sandwiches prepared by students that have no clue how to
| make sandwiches that don't spill all their innards as
| soon as they leave their hands.
| atatatat wrote:
| Why not choose a sub shop that serves other foodstuffs
| besides turkey and soy disguised as a bunch of other
| shit?
| johnchristopher wrote:
| What does that have to do with mayonnaise ?
|
| Anyway, try out a Point Chaud. Same overflowing
| sandwiches.
|
| I once bought one, I walked out the shop and 45 meters
| later the sandwich literally went through the paper bag
| and fell down on the ground.
| [deleted]
| [deleted]
| 0xdeadbeefbabe wrote:
| The kind in you would find in a scene from _hacker_ news.
| andrewmcwatters wrote:
| Best mayo it ever had, too.
| [deleted]
| [deleted]
| hurflmurfl wrote:
| Is mayo mayonnaise? Do people eat mayonnaise by jars?
| TeMPOraL wrote:
| The first one yes. The last one could've been Mayo
| clinic.
| CoastalCoder wrote:
| If the movie Undercover Brother is to be believed, then
| yes. Typically on a slice of Wonder Bread.
| AlotOfReading wrote:
| Yep. When I have to work with robots, it's from a distance
| and with as much safety equipment as possible. I've seen too
| many physical, hardware, and software failures to risk
| anything I care about. Hearing protection is also important.
| A hundred pounds or more of metal slamming into itself at
| high speed makes a deafening sound.
| _pmf_ wrote:
| Every hardware demonstration is like the board room scene
| from Robocop: https://www.youtube.com/watch?v=ZFvqDaFpXeM
| [deleted]
| azalemeth wrote:
| When I was a graduate student making something in the
| machine shop, another user of this (excellent) departmental
| facility had just spent most of the day setting up his CNC
| milling job on the oldest, shittiest (and therefore least-
| time-pressured) 3-axis mill in the building. Whilst I was
| manually turning something on the lathe about 15 m away, he
| shut the door and pressed the 'go' button.
|
| There was an absolutely almighty BANG, of the 'an explosion
| has just occurred' variety that made me very glad I wasn't
| actually cutting metal at that precise point in time. His
| g-code had an off-by-one error (I think) and it had
| dutifully picked up a ~20 cm HUGE flycutter, spun it at the
| speed of of a ~5 mm bull nose cutter, and driven it
| directly down into a piece of aluminium. The flycutter had
| broken and effectively welded itself to the aluminium,
| which had sheared down the middle, spun out, and hit the
| protective guards that completely encompass the machine.
| The person driving it (either a postdoc or graduate
| student) was maybe 40 cm away and saw this ~2 kg piece of
| metal bounce off a thick reinforced poylcarbonate guard
| directly at the level of his head.
|
| Safety equipment saves lives.
| faeyanpiraat wrote:
| I've read a story somewhere, that someone trying to fix
| something in the toilet had to be in a position close to
| the toilet, then the lid accidentally fallen shut and the
| guy had his hearing damaged because the toilet bowl somehow
| concentrated the noise in one point where his head was.
|
| It's weird how even ordinary things can be dangerously
| loud.
| cmenge wrote:
| Something similar happened to me when I remote-controlled a
| buddy's computer. This was I guess in the early 2000s when disc
| drives were still a thing. Opening the drive knocked over a
| glass of wine and caused quite a mess... Noone hurt, but also
| spilled wine.
| lathiat wrote:
| The "Stuff Made Here" youtube channel was dealing with this
| recently when making a chainsaw robot. As you can imagine, it
| was kindof important. He ended up with a combination of a
| flashing "armed" light and an e-stop switch.
|
| https://www.youtube.com/watch?v=ix68oRfI5Gw&t=732s (12m12s)
| xnx wrote:
| > I learned a valuable lesson about the difference between
| messing around with hardware vs software.
|
| Tesla Autopilot developers should read this.
| its_nikita wrote:
| That's a good story. Yeah I feel like there must be soo many
| more opportunities to physically damage/harm something from
| robotics than software alone.
| LeifCarrotson wrote:
| Anything with an actuator, really. I'm a controls engineer,
| we work with all kinds of hazards and it's my responsibility
| to run the risk assessment that makes sure no minimum-wage
| operator gets harmed because of our machine. People are the
| squishiest, weakest, most sensitive part of just about any
| shop, so there's a lot of risks to assess!
|
| One key observation, though, when working with code is that
| the machine becomes so close to predictable that it's more
| dangerous than if it were unpredictable. A cordless handheld
| drill is hardly a tool that most people would call
| 'hazardous'. You turn the trigger, the thing rotates, grab
| the chuck and you can likely stall it. But that much energy
| in something driven by code is extremely dangerous, it's
| waiting for any of who knows how many conditions to take off,
| a common one is that putting your hands in/on something that
| seems to be not moving can 'make' a sensor and the machine
| will take off.
|
| There are definitely two kinds of safety domains, one applies
| to manually operated tools where the operator of, say, a
| knife is responsible for their own safety - if they cut
| themselves, they're at fault, not the knifemaker. There's
| another kind of safety engineering where if the machine takes
| off 'by itself' while an operator is in the way it's the
| machine designer's fault for not stopping that from
| happening, the operator can't be expected to know what's
| going on.
|
| The latter _should_ become more common as computers continue
| to permeate everything we use - that cordless drill is no
| longer controlled by the operator with a trigger switch that
| connects power to a DC motor, it 's a brushless motor driver
| with an analog input sensing the position of the trigger and
| the EMF of the motor, and the charge state of the batteries,
| and who knows what else. Bump a sensor and it might take off,
| you don't know why it does what it does.
|
| I'll continue to make my automated cells as safe as I can,
| but don't trust code that's not so simple you can be
| confident of how it works.
| prox wrote:
| One of the reasons I love to dable in the game Space
| Engineers is that you get to experiment with simulated
| physical equipment. Things often go wrong and boom (or
| Klang in SE parlance) and you often die or hurt yourself.
| You seen learn to program in steps for safety.
| dharmab wrote:
| > A cordless handheld drill is hardly a tool that most
| people would call 'hazardous'. You turn the trigger, the
| thing rotates, grab the chuck and you can likely stall it.
| But that much energy in something driven by code is
| extremely dangerous, it's waiting for any of who knows how
| many conditions to take off, a common one is that putting
| your hands in/on something that seems to be not moving can
| 'make' a sensor and the machine will take off.
|
| A friend needed a valve cover gasket changed on his Honda,
| and his wife needed to use the car for her Uber runs that
| night. He came over and instead of our usual hand tools I
| put a socket adapter on my 20V drill to speed up
| disassembly. I handed the drill to him and told him "start
| on the lowest torque setting, and move up in small steps."
|
| I turned around to grab more tools from the toolbox. A
| minute later, I heard a loud noise. I turned to see the
| car's windshield cracked and a shocked look on my friend's
| face.
|
| My friend was used to his renter's power drill. He hadn't
| anticipated how much torque a modern contractor's drill
| outputs and set the torque to the maximum setting. On the
| third valve cover bolt, the drill had caught on the bolt
| head and spun my friend around, smashing the battery into
| the windshield.
|
| There's a piece of paper taped to me toolbox called "List
| of things <friend's name> may not attempt unsupervised." It
| gained a couple of entries that day...
| whatshisface wrote:
| Why would a drill be engineered to put out more torque
| than a human holding the handle could be expected to
| counterbalance?
| hoppla wrote:
| When I drill 30cm holes in fiberglass or wood, I place my
| leg next to the handle. That have saved my wrist many
| times as the tool bites to the material and send the
| drill in a circular motion.
| function_seven wrote:
| I imagine he was leaning over the engine bay, maybe
| holding the drill in one hand. So in that specific
| scenario, the tool was more powerful than he could
| control.
|
| But that same drill might be asked to bore a large hole
| in a piece of wood, and the user would anticipate the
| amount of leverage they need to control it. Two hands,
| arms close to body, etc.
| dharmab wrote:
| For drilling holes in soft materials like drywall and
| wood, or even softer metals like aluminum. I recently
| used that drill to drill into a motorcycle engine to
| remove a stuck rotor cover.
|
| Relevant old article: http://www.team.net/mjb/hawg.html
| ehnto wrote:
| They probably could have, had they been ready for it. Not
| everyone is the same weight and strength either so it
| could just be that it was out of their physical
| capabilities.
|
| That is often the difference between home and tradesman
| tools. A tradesman can reasonably be expected to handle a
| bit more responsibility from their tools than the home
| handyman.
| duskwuff wrote:
| Powerful electric drills will often come with an extra
| handle on the side (or a mounting point for one) so that
| you can brace them with both hands. It's up to the user
| to set an appropriate torque limit if they're only using
| one hand.
| maccard wrote:
| Using the analogies above, a drill like that could put
| the trigger on the awkward handle, forcing the operator
| to use it
| dharmab wrote:
| The second handle sometimes needs to be removed to fit
| into a narrow space. In that case, you set a torque limit
| and operate the drill with one hand.
| maccard wrote:
| That's fair; Maybe you need to hold two triggers, and the
| torque limit is reduced if you're only operating in "one
| hand mode"?
| Snoozus wrote:
| Price, there are some fancy battery powered drills that
| detect the jerk via an accelerometer and reduce the
| power, but most drills don't have that. for example:
| https://www.boschtools.com/ca/en/more/news-and-
| extras/knowle...
|
| For a continuous drilling operation the torque is totally
| fine, the problem is abrupt changes in torque because of
| something catching. On drills without this feature that's
| what the torque limiting clutch is for.
| mauvehaus wrote:
| Dunno about Bosch's implementation, but the Milwaukee one
| sucks. The drill/impact driver would strip the screw
| head, jerk your wrist, and then cut the power. I'd much
| rather have a mechanical clutch than than that one.
|
| We actually had an older drill with the mechanical clutch
| with a stripped high gear that we kept around for driving
| screws instead of tossing because the new one was so bad.
| jccooper wrote:
| The amount of torque you can handle with the drill
| horizontal and close to the body is rather different than
| vertical and leaning over an engine bay.
| robocat wrote:
| An electrician I know broke his wrist with a high torque
| electric drill - be careful!
| speakspokespok wrote:
| Recently I did what's called the 'big 3' upgrade on my
| car's wiring. You replace the oem wiring from your
| alternator, etc. with 1/0 gauge cable, thus allowing
| substantially more power through. This is for speakers. I
| made my own cables and was in the process of upsizing one
| of the battery lugs by drilling the hole bigger on a
| drill press. I was just holding the wire steady with my
| left hand while pulling the drill handle down with my
| right. The drill bit caught and spun the cable around,
| including somehow my hand in it, winding my hand up in
| the cable very tight against the still spinning drill.
| It's a small drill press and didn't have enough torque to
| keep spinning, but had the drill been stronger I'd have
| at least broken my hand if not worse. As it was my hand
| was swollen and scratched pretty good. When you make your
| living typing this really makes you think.
| myself248 wrote:
| Having had this happen a few times, I'm pretty obsessive
| about workholding now. It's a shame that a good drill-
| press vise can cost almost as much as the drill press
| itself, because it's really important for safety.
|
| You should image-search the term "radial drill" sometime.
| ;)
| barrkel wrote:
| An impact driver (rattle gun) is much better for speeding
| up disassembly than a drill. They also don't apply
| anything like the same feeling of torque to the
| operator's wrist.
|
| A lower power (e.g. 300Nm max) battery driver is great
| for when you have to undo lots of lower sized bolts,
| while it would be a little bit underpowered for wheel
| nuts or motorcycle fork retaining bolts.
| TheSpiceIsLife wrote:
| Dear Lord please do not put 300Nm on your wheel nuts.
|
| They're supposed to tentioned correctly with a torque
| wrench, usually between about 110 and 120Nm.
|
| Edit to add a reference, just random from a search:
| https://www.barum-tyres.com/car/expert-advice/safety-
| driving...
| barrkel wrote:
| To be absolutely clear I'm talking about disassembly. I'd
| never use a rattle gun to tighten anything.
| namibj wrote:
| I think parent was referring to taking wheels off, not
| torquing the nuts.
|
| And for that purpose, it does seem appropriate.
| TheSpiceIsLife wrote:
| On second reading I see you may be right.
|
| However my point still stands, somewhat: if 300Nm is
| insufficient to _undo_ your wheelnuts, they 're way too
| tight.
| barrkel wrote:
| You should be introduced to Italian single-sided-swingarm
| nuts. For example, my MV Agusta Brutale required 220 to
| 240Nm tightening. It would come loose with my battery-
| powered 300NM rattle gun, but only after a while.
| (Fantastic bike but I no longer own it. I'd rent another
| though.)
|
| Ducati single-sided swingarm nuts can be similar, but I
| have not yet owned a Ducati.
| dharmab wrote:
| Let me forward this advice to Mercedes AMG Petronas:
| https://www.youtube.com/watch?v=UUyUA91ILsE
| dharmab wrote:
| This is true. I didn't have a hammer drill at the time
| that would accept a socket adapter so we made do with the
| drill.
| rohansingh wrote:
| Heh, you don't even need proper robotics.
|
| Back in 2002, I was getting a package with a brand new Pocket
| PC (smartphone without the phone, running Windows). And I
| really wanted to know when it was delivered, but the UPS guy
| would regularly leave packages on the porch without ringing
| the bell or anything.
|
| This was before you could get delivery alerts or anything
| like that. But I had a spare laptop with an integrated webcam
| (wow!), and I'd figured out how to make it run actions on
| motion detection.
|
| My plan was to point the laptop at the door, and eject the CD
| drive when it detected motion. The tray of the drive would
| push a water bottle off the table. That would land on a
| seesaw, which would launch a deck of cards in a hard plastic
| case at the door and make a very loud noise.
|
| It's unclear why I couldn't just play a really sound on the
| speakers instead. Anyway, I tested the program by standing in
| front of the laptop and waving my hand.
|
| It worked perfectly! The CD tray ejected, and I watched as
| the water bottle slowly rolled off the table. It dropped onto
| the seesaw...... and instantly launched a hard plastic deck
| at my face and got me right between the eyes.
|
| Never again have I been in so much pain and also so excited
| about my code working perfectly at the exact same time.
| faceplanted wrote:
| This made me actually laugh out loud, it feels like some of
| the things I came up with as a teenager wanting to do
| robotics and automation but having no money or way to
| purchase things online, water bottles were actually a good
| way of powering things like opening curtains by dropping
| them on a string.
|
| Also I like that even after you came up with "knock
| something off the table" you felt you needed a seesaw
| catapult thing and didn't just knock something off that
| could make the actual sound like a cake tin or bell or
| something.
| rohansingh wrote:
| > Also I like that even after you came up with "knock
| something off the table" you felt you needed a seesaw
| catapult thing and didn't just knock something off that
| could make the actual sound like a cake tin or bell or
| something.
|
| It totally doesn't make any sense! I think I might have
| been fascinated with the idea of Rube Goldberg machines
| or something at the time. Or maybe I thought I could
| build a "security system" with it? Also it was summer and
| I was a bored teenager.
| lloeki wrote:
| > messing around with hardware vs software.
|
| Back when I was doing some hands-on practical training in
| electric engineering school, we had to design a control circuit
| on some breadboard, the kind that in high school would lit a
| couple of leds, and maybe make a light fade, but here it was
| driving a big-ass train engine boxed in a 1.5m x 1.5m x 3m
| steel cage, right next to the bench where we pieced the control
| device together, barely arms length away.
|
| While conceptually the same, "theory" vs "practice" and
| "command" vs "power" suddenly takes a whole new meaning where
| you're suddenly pushing several orders of magnitude more power
| than a puny 9V battery could. The buzzing of a hundred amps
| ready to flow inches away was chillingly ominous. You get a
| strange urge to triple check, quad check even, design and
| calculations before flicking the switch.
|
| As we all successfully started up our bench, the rumbling of a
| dozen of these bare protomachines revving up in a hangar was
| eerie. The thought of them sucking in such an amount of overall
| power from the grid dizzying. I rarely get cold-sweat and goose
| bumps, but this was one of these days.
| 3op wrote:
| Was doing research with quad-rotors.
|
| Had 10+ stitches from bad tuning of a PD controller (and me not
| taking proper safety measures).
| userbinator wrote:
| _Mistake #1: Should not have had my volume that loud._
|
| I always keep the volume low enough that a full-amplitude noise
| wouldn't be anywhere near physically painful to listen to, but
| then again most of the stuff I listen to is ultra-compressed
| already...
|
| Of course, the actual bug is that the audio is in units of
| samples, which are only 1 byte in the case of mono 8-bit format,
| so treating the file as being 8bps mono when it could be 16bps
| mono, 8bps stereo (far more subtle difference in the case of byte
| misalignment), 16bps stereo, or any of a number of other formats
| is always going to lead to cases where this could occur.
| theli0nheart wrote:
| > _Look at an audio file 's waveform before playing it at max
| volume._
|
| This is important, but more broadly, practice good sound hygiene:
| wear headphones them around your neck until you know for a fact
| that it's safe to put them on your ears. Additionally, _never_
| play "new" sounds without remembering to set audio output to a
| tiny fraction of normal and increasing it after the sample is
| deemed safe.
|
| Musicians have this drilled into them because it involves their
| daily work, but this is good advice for everyone. Damage to ear
| drums can be permanent.
| fart32 wrote:
| And if you have been exposed to a very loud noise, to the point
| where your ears are ringing (probably not from headphones, but
| like starting a loud bike in a garage or gun fire), go to
| hospital, as soon as possible. They can give you medicaments
| and prevent permanent damage (tinnitus).
| ehnto wrote:
| I have tinnitus. You don't want tinnitus. Silence is no
| longer a possibility for me. I got it messing about on
| computers and with loud cars in my teens, so unfortunately it
| was just a dumb kid thing that will last a lifetime.
|
| I hate to guess how many kids are giving themselves tinnitus
| right now. It's just not possible to communicate the
| seriousness of long term problems to kids, they have no
| context for what long term really means yet.
| 12ian34 wrote:
| Sorry to hear that, but I appreciate your words of warning.
| I go to loud clubs / live music a lot (pre covid) and
| despite knowing I should probably wear earplugs, I don't.
| Perhaps club revival post-lockdown is the time for me to
| begin.
| ahartmetz wrote:
| In a pinch, you can use rolled / crumbled scraps of paper
| towels from the bathroom. It's quite common here (Berlin)
| and absolutely no one looks at you strangely if you do
| that. Some good clubs only have the bass really loud but
| it's not as common as it should be. High frequencies are
| what causes ear damage.
| exikyut wrote:
| A recent Ask HN on favorite purchases had a reasonable
| subthread on earbuds:
| https://news.ycombinator.com/item?id=27219759
| richrichardsson wrote:
| No one mentions custom ear plugs on that thread.
|
| They are pricey, but such a good investment. Way better
| than anything else I've tried, more comfortable for
| extended periods of use and most importantly they
| attenuate the sound fairly evenly across the spectrum.
|
| My only advice is to get the string attachment option, so
| that you can't accidentally lose one of them!
| ArchOversight wrote:
| I just got myself a pair of custom earplugs from
| https://1of1custom.com/ which are absolutely amazing.
|
| I ride a motorcycle and needed something to make sure I
| don't lose my hearing from the wind noise/exhaust noise
| (it's stock, but still 85 dB when the throttle is open).
|
| They are also great for concerts and live music events
| where the speakers are generally cranked up to 90 - 95
| dB.
|
| I got the 27 dB version, and it allows me to hear what
| people are saying above the the music but really cuts out
| the painful parts.
|
| They are not cheap, but I already have tinnitus, so I
| want to make sure it doesn't get worse.
| Doxin wrote:
| Totally worth getting some nice-ish earplugs IMO. Even
| just getting a $30 set is such a wild improvement,
| comfort-wise, over those horrid foam earplugs you see a
| lot of people use.
| Dylan16807 wrote:
| Why is your normal volume so loud?
| mustacheemperor wrote:
| This was a practice I had to adopt for a period of time where
| connecting my Sony bluetooth headphones to my iPhone would
| reset the system volume to max, sometimes only after I had
| pressed play on Spotify. Numerous occasions where my ears were
| instantly blasted with whatever music I had last paused at
| maximum volume trained the habit.
|
| It was finally fixed a couple updates ago, I think around when
| they introduced the health feature to track whether you've been
| listening to music too loudly. Go figure. It had been getting
| frustrating enough that I was ready to write a blogpost
| wondering how much cumulative hearing damage had occurred
| across the iPhone userbase as a result of that bug.
| tgv wrote:
| Also: put a limiter on your audio bus if you're exposed to such
| risks regularly. Don't play sounds directly, but open them from
| a host program that can apply VST/AU/... effects, and make sure
| there's a (brick-wall) limiter at the end.
| Turing_Machine wrote:
| Not my own code, exactly, but back in the day I was trying to get
| a balky dot-matrix print head working and accidentally sent power
| to it while I was holding it.
|
| I had a row of dots tattooed on the ball of my thumb for a year
| or two afterward.
| BeniBoy wrote:
| I think the dumbest way I could have hurt myself was trying to
| build a DIY laser cutter with a 2W IR laser. The catch is that
| you don't know wether it's on or not. As they say in the laser
| community "Don't look into the laser with your remaining eye".
|
| The most consistently hurting project was a plotter that printed
| images with milk (don't ask why), it used a heating part to
| reveal the drawing. When a paper jam creates a fire you sure want
| to be near during a print job ! Plus burning my fingers a few
| times (lost some parts of my fingerprint on one of my thumbs).
| alexc05 wrote:
| I wrote a layoff database for Nortel Networks from ~1998 to 2001.
|
| The way I got my notice of termination was while I was running
| some tests on the production database and needed a "negative" so
| I searched for a userid that was not present in the database: my
| own.
|
| When I saw my name in the list I called my manager and asked him
| what was going on.
|
| He said "Alex, why don't you head on home for the day and I'll
| call you there"
|
| I wouldn't say "hurt" though. Nortel went bankrupt and I got a
| great severance package.
| bijant wrote:
| DELETE FROM LayoffDB WHERE EmployeeName='Alex';
| toomuchtodo wrote:
| This is what triggers are for :)
|
| "Some say Alex is still collecting a check to this day."
| aoms wrote:
| BobbyTables would do well here..
| mypalmike wrote:
| Echoes of Office Space right there. Did you happen to have a
| red stapler?
| sneak wrote:
| Fun fact: Swingline never made a red stapler, the one in
| Office Space was a prop produced for the film by the
| production crew. Office Space popularized it to the point
| where Swingline actually started producing red staplers after
| the release of the film to capitalize on the demand.
| OJFord wrote:
| But.. I was told..
| sneak wrote:
| Just pass.
| prox wrote:
| Ouch... and what are the odds!
| yaitsyaboi wrote:
| What are the odds of being laid off if your boss asks you to
| write something called a layoff database?
| flear wrote:
| "Why me?" "You're more than qualified for this task."
| [deleted]
| inopinatus wrote:
| Writing the tool to fire yourself is definitely a level up
| from merely being asked to train your replacement.
| Agathos wrote:
| "We anticipate this being the last round of layoffs so we
| won't need a layoff db guy any more."
| bryanrasmussen wrote:
| normally I'd think not very high, at least until the first
| round of layoffs are done and any potential bugs with the
| database/application have been worked out.
| ibudiallo wrote:
| ... as part of the bankruptcy proceedings they sold the
| technology to a bigger company. A developer improved the
| application by automating it. It could now send emails to the
| right departments automatically. The developer entered his own
| email as a test and was promptly fired by the new software.
|
| Everyone who worked on the machine are now gone, yet it
| continues to do what it was designed for. That is until I found
| myself on the path of the machine...
|
| Just kidding, but it would make a great origin story to this:
| https://news.ycombinator.com/item?id=17350645
| kanzenryu2 wrote:
| One of the only bankruptcies in history to make a profit!
|
| I worked for the Australian subsidiary in the 90s when they had
| "Vision 2000" of becoming the world's third largest telco by
| 2000.
| shoo wrote:
| live by the layoff db, die by the layoff db
| blablabla123 wrote:
| > why don't you head on home for the day and I'll call you
| there?
|
| As non-native English speaker this expression really puzzles
| me.
| cedricd wrote:
| In other words: please go home and I'll call you.
|
| 'Head on home' is a real expression. Similar ones are 'head
| over there', 'head to ...', all of which just mean 'go to'.
| blablabla123 wrote:
| I mean more the "Why don't you ..." It's quite obvious that
| it's rethorical but it seems so nonsensical to put this
| into a question while camouflaging what is really going on.
| schoen wrote:
| It occurs to me that Spanish can also have this, which I
| only know because of this incident:
|
| https://en.wikipedia.org/wiki/%C2%BFPor_qu%C3%A9_no_te_ca
| lla...
|
| (I don't know whether it has exactly the same set of
| connotations in Spanish as in English, but it doesn't
| seem like the king expected Chavez to do something other
| than comply.)
| adrianmonk wrote:
| I'd say the purpose is more or less to show respect. By
| phrasing it as an idea or a suggestion, you give them the
| chance to (appear to) cooperate willingly.
|
| Both people presumably do know what's really happening,
| and this is exactly why it's seen as unnecessary (and
| inconsiderate) to actually say it. There's no reason to
| call extra attention to something unpleasant.
| dentemple wrote:
| The "camouflage" here indicates an increase in the
| speaker's politeness level. Some languages use explicit
| terms or forms of address to do this; English, however,
| utilizes indirect phrasing to achieve this effect.
| HeyLaughingBoy wrote:
| Don't feel bad :-) My 11 year-old son (a native English
| speaker) said the same thing to me just yesterday.
|
| "Hey, bud. Why don't you pick up those two plastic
| containers and follow me."
|
| "OK, but dad, it really confuses me when you say that.
| Can't you just say 'please pick up those containers'? It
| sounds like you're giving me an option but you're really
| not."
|
| Until he said that, I had never given it a thought. But
| he takes things very literally, so I can see how it's
| confusing even though he knows what I mean.
| kibbleble wrote:
| Did your son really say "can't you just say?" :P
|
| I think English littered with these suggestive polite
| negation statements.
| HeyLaughingBoy wrote:
| LOL. I didn't even notice that :-)
| aynsof wrote:
| What an interesting question!
|
| As others have said, it's definitely a 'softening' of a
| request to make it more polite ('Go home' vs 'Would it be
| possible for you to go home?').
|
| But I think there are some status games going on here,
| too. A subordinate would never use that phrasing with a
| superior.
|
| While the phrase uses conditional language to 'soften'
| the request, it's also an imperative (an order) that's
| made to look like a request.
|
| Try to imagine the boss saying this. How would they have
| said it - with an upward inflection at the end, as in a
| question like this one? Definitely not! The phrase would
| definitely end on a downward inflection, as in an order
| like 'Please go home'.
|
| It's a curious turn of phrase that I'd suggest is
| particular to managers, parents, and other authority
| figures that need to maintain a veneer of respect for
| their subordinates. It also strikes me as uniquely
| American; I couldn't imagine a Brit or an Australian
| saying something like this (but happy to be corrected).
| toolslive wrote:
| is that a pars pro toto?
| FabHK wrote:
| No. It's not "take your head home", with your head (a
| noun) being the part standing in for the whole, namely
| you. Rather, "to head" is a verb that means (among other
| things) "to move in a specific direction". For example,
| an aircraft could be heading north.
| hnbad wrote:
| Isn't "take your head home" pars pro toto given that it
| means "take yourself home" with the head (pars) standing
| in for (pro) the person (toto)?
| hnbad wrote:
| No, "head" is a verb in this case. Related to "heading"
| (i.e. what direction a vehicle is pointed at while
| moving), I think, rather than the body part.
|
| I can't find the etymology beyond words meaning the body
| part or "primary"/"main". There's no direct equivalent in
| German for example despite the shared etymology for the
| other meanings.
|
| I would guess that it is related to the body part in a
| figurative sense in the same was as "face" (i.e. turn
| your body in a specific direction) though I have no idea
| how "put your head there" would come to me "go there". I
| wonder if this was before or after "heading" became a
| thing for ships (which generally move in the direction
| they "face", so the "heading", i.e. how the "nose" is
| aligned, could go on to become a verb).
|
| EDIT: I'm not sure it's pars pro toto because I'm not
| sure it directly refers to the "head" in the sense of the
| body part rather than the "heading" which is not directly
| related to the actual body part when talking about
| vehicles like ships.
| shoemakersteve wrote:
| no that's latin
| aoms wrote:
| This is a great example of how companies really are. Nobody is
| important enough in the end.
|
| Work for a company for what you get from them, not for what you
| can give them!
| ecpottinger wrote:
| How far back are we allowed to go.
|
| Decades ago I had a Original Commodore PET 2001. It could only
| display white text/characters on a black screen. Foolish me
| having read a Byte magazine describing how a black & white colour
| wheel could make you see colours see:
| https://archive.org/details/byte-magazine-1977-02/page/n45/m...
| so I tried to get my PET colour to display colours using this
| method.
|
| Trying different timings, all the while staring at the screen. I
| did this all day looking at flashing lights all the time.
| Afterwards it turns out I could not see properly for hours.
| rcthompson wrote:
| I haven't ever hurt myself with my own code, but I _have_ done
| the reverse. I work on COVID research, and one of the programs I
| maintain involves pulling the data on all our the COVID patients
| and vaccine recipients enrolled in our study. One day, it was my
| turn to get the vaccine, and I also volunteered to enroll in the
| study myself. However, they were unable to find a vein to take a
| blood sample, so my enrollment was cancelled. After I received
| the vaccine, I went back to my home office and continued working
| on my program, which immediately crashed.
|
| I drilled down on the offending database record, looking in the
| demographic data to see if something was wrong. After staring at
| it for a few moments, I realized that the demographic data
| looked... familiar. And then it hit me: my own enrollment record
| from that day had been left in an inconsistent state in the
| database that my program was pulling the study data from, due to
| the failure to collect a blood sample. This resulted in my
| program crashing on the inconsistent data. So I had to add a
| special case to my program to handle my own failed study
| enrollment from earlier that same day.
| a3w wrote:
| Don't use loops. https://github.com/you-dont-need/You-Dont-Need-
| Loops
|
| They kill people [citation needed] due to off by one errors.
|
| N00b.
| otikik wrote:
| Every single line of code is potential future hurt.
| rottc0dd wrote:
| Hi, I think I have mentioned this before in HN too. I am not from
| CS background and just learnt the trade as I was doing the job, I
| mean even the normal stuff.
|
| We have a project that tries reify live objects into human
| readable form. Final representation is so complicated with lot of
| types and the initial representation is less complicated.
|
| In order to make it readable, if there is any common or similar
| data nodes, we have to compare and try to combine them i.e. find
| places that can be made into methods and find the relevant
| arguments for all the calls (kind of).
|
| Initial implementation did the transformation into the final form
| first, and then started the comparison. So, the comparison have
| to deal with all the different combinations of the types we have
| in final representation now, which made the whole thing so
| complex and has been maintained by generation of engineers that
| nobody had clear idea how it was working.
|
| Then, I read about hashmap implementation later (yep, I am that
| dumb) and it was a revelation. So, we did following things:
|
| 1. We created a hash for skeleton that has to remain the same
| through all the set of comparisons and transformation of the
| "common nodes", (it can be considered as something similar to
| methods or arguments) and doing the comparison for nodes with
| matching skeletal hashes and
|
| 2. created a separate layer that does the comparison and creating
| common nodes on initial primitive form and then doing the
| transformation as the second layer (so you don't have to deal
| with all types in final representation) and
|
| 3. Don't type. Yes. Data is simplest abstraction and if your
| logic can made into data or some properties, please do yourself a
| favor and make them so. We found lot of places, where weird class
| hierarchies can be converted into data properties.
|
| That did not just speed up the process, but resulted in much more
| readable and understandable abstractions and code. I do not know,
| if this is widely useful but it helped in one project. There is
| no silver bullet, but types were actual problem for us and so we
| solved it this way.
|
| Edit : new lines and some typos
| cassonmars wrote:
| I once programmed an arduino driving multiple solenoids with
| felting needles at pretty high speeds (wool felting uses needles
| to push wool fibers together into shapes), all pointing to the
| same target area, at slightly different timings. In the perfect
| case, it worked really well. Felting needles however bend and
| break with heavy use, leading to colliding felting needles
| projecting toward my hand. Ouch.
| froh wrote:
| > Well this was fine by me because I was going to write this
| program in C, so I didn't really care about safety.
|
| this is extra funny if you work in automotive functional safety.
|
| the collection of anecdotes in this thread makes me wonder if an
| intro to functional safety could be standard curriculum.
|
| the approach of Nancy Leveson is not only very accessible but
| also very accessible, freely so:
|
| https://g.co/kgs/AJWDuh
|
| http://sunnyday.mit.edu/
| Laremere wrote:
| I have. Back in early days of Oculus, I was using one of the
| development kits (DK2?, maybe DK1) and making something in Unity.
| The Oculus had one screen, with lenses over the left and right
| halves. To give depth perception, it renders a view for each eye,
| and shows them in a vertical split screen. Some script had a bug,
| and none of that happened; Instead it simply stretched a normal
| view across both screens.
|
| I put the headset on, and quickly noticed things weren't working
| right. I was walking around, trying to figure out what the issue
| was. Trying walking back any forth looking at a wall in front of
| me, I felt terrible pain. Something about the left and right eyes
| seeing movement in different directions across their entire field
| of view really breaks the brain. It was very sharp and localized
| too.
|
| The brain's perception system is weird.
| enchiridion wrote:
| Whoa that's interesting! Glad you're alright. Where was the
| pain?
| ecpottinger wrote:
| For me it was in the back of the neck.
| scotty79 wrote:
| I had weird experience with valve index. I somehow
| miscalibrated it and the floor wasn't level.
|
| I spent maybe 20 seconds in VR with skewed floor and it felt
| horribly wrong. And the whole evening my sense of ballance and
| perception was broken not to be the point of falling over but
| the real world around me felt wrong. Only after I slept my
| brain fixed itself.
| TeMPOraL wrote:
| I had a similar early experience with Oculus Quest. I
| downloaded a "ISS tour" game, where you played as an
| astronaut, and had the full freedom of movement microgravity
| affords you. The "advanced mode" of the game allowed you to
| move around by grabbing handles or pushing off things.
|
| This kind of unconstrained motion is notoriously hard on VR
| players, and I felt a bit uneasy the whole time when I was
| navigating this way, but then I made a mistake. I wanted to
| rotate myself, so I instinctively grabbed two handles and
| made a sideways hand motion, sending myself into a _fast_
| spin. I almost puked, and even after taking the VR headset
| off, I kept feeling nauseous for the rest of the day. Like in
| your case, my brain fixed itself when I fell asleep, and I
| woke up feeling fine.
| jugg1es wrote:
| My bachelor's degree is in neurobiology and it would have been
| very interesting if this was reproducible in other people.
| Experiencing physical pain from visual stimuli (stimuli
| unrelated to light intensity, at least) is not something I've
| ever really heard of. You may have discovered the visual
| equivalent to the Brown Note.
| ecpottinger wrote:
| I know in the past I felt pain while trying to say certain
| lies. I do not mean I felt uncomfortable, I mean I felt real
| pain. It is weird, but sometimes you can cause pain without a
| direct physical cause.
| hutzlibu wrote:
| "It is weird, but sometimes you can cause pain without a
| direct physical cause."
|
| Since the brain and the body are wired up pretty closely -
| this is not so weird at all.
| jshmrsn wrote:
| I'm not an expert on the topic, so just asking: Is it possible
| you had a minor seizure?
| no-s wrote:
| back in the early 80's I wrote 400kLoC in the course of a summer
| (APL/360, very short lines), printed it all out on green bar
| fanfold paper. Stashed the printouts in binders on bookshelves,
| the shelves collapsed and I got nasty bumps and paper cuts.
|
| If you meant conceptual injury, I try not to dwell on it, but I
| once wrote a makefile that "clean"-ed up all the source code,
| source control, and the backups...just a cut and paste error, but
| soured my original exuberance about make. For life.
| stjohnswarts wrote:
| I bet most robotics and other embedded people have :) . I once
| got zapped because of a timer I set on a 50V section (95% of the
| board was 12V or less) of a circuit and proceeded to forget the
| timer (for a transistor switcher) was set in my debug version. It
| was just 50v DC and tiny amperage but still very zappy.
| Jorengarenar wrote:
| I once wanted to run my Bash script (for archiving photos)
| through ShellCheck. I will never know, but I had to do something
| terribly wrong, as it started to remove my root directory...
| Thankfully, didn't had root privileges, so "only" resulted in
| nuking my home folder.
| devoutsalsa wrote:
| I once copied a Terraform directory & changed all the confit
| values to match the new environment I wanted to spin up.
| Unfortunately I forgot to remove the Terraform state files. So
| running "terraform apply" did a great job of spinning up the
| new environment, right after it tore down the old one.
| robotresearcher wrote:
| In the 90s I implemented a PWM motor controller in asm, for a
| robot with enough power to accelerate hard on soft grass,
| outside. Robot was rather over engineered by a team mate who
| previously worked on automated farm machinery. Tested the
| microcontroller on the breadboard with an oscilloscope, all
| looked well: nice PWM shapes.
|
| For the first integrated test on the robot, I high-centered it on
| some bricks so the wheels would turn freely, on the bench. Didn't
| want to deliver too much torque with wheels up, so asked for 1%
| PWM duty cycle. The robot leaped into the air, tearing off its
| umbilicals, hit the floor spinning and generally smashing shit
| up, including bits of me.
|
| Debugging revealed that the output PWM duty cycle was inverted
| when commanded <2%, so my 1% command was 99% power. My breadboard
| tests had never gone below 3%, which I guessed was the minimum to
| overcome stiction on soft ground. Poor robot. The chunks out of
| my hands were the price I paid to learn to test important corner
| cases.
| MauranKilom wrote:
| Ouch. I'm curious what would cause the PWM output to invert
| under such condition? Was there a special case built in for <2%
| that was coded incorrectly, or did it emerge from something
| else?
| xondono wrote:
| PWM periods and on-time are implemented in the time domain in
| hardware, so my guess would be issues with integer algebra.
|
| Some hardware implementations are notoriously weird on edge
| cases. Some manufacturers built PWM modules so 0 setting on
| the on-time register means "no signal", while for others it
| means "minimal on-time" (no signal is achieved by turning off
| the module).
|
| The other bad handled case is when going above period (if
| period is set at 210 clocks but on time is set to 250). Some
| implementations wrap around, some get locked in "always on".
| robotresearcher wrote:
| The uC I used did not have built in PWM. I implemented it
| using GPIO with excitingly bad results.
| robotresearcher wrote:
| My timing bug, if I recall correctly. I was very
| inexperienced. I got better but never great at that kind of
| development.
| tehwebguy wrote:
| Not physically but once I did a find & replace across a folder of
| PHP files but didn't specify filetype, ended up replacing a few
| characters in a Flash .FLA that was part of the same project,
| corrupting it. Had to start nearly from scratch, I would say that
| hurt.
| [deleted]
| geocrasher wrote:
| This thread would be incomplete without a link to the Therac-25:
|
| https://en.wikipedia.org/wiki/Therac-25
|
| TL;DR: Software race condition caused radiation doses several
| hundred times higher than intended, killing several patients.
| fullstop wrote:
| We studied that case in my college classes, and I decided to
| never work in a field with such risks.
| goodpoint wrote:
| The thread is about "Have you ever hurt yourself from your own
| code?"
|
| ...otherwise: https://en.wikipedia.org/wiki/Boeing_737_MAX
| scoutt wrote:
| A lot of times...
|
| Skin/eyes: experimenting with high-brightness LEDs. These can
| become pretty hot in no-time. I was trying to do my own LED
| driver (regulating a PWM signal from voltage/current sensing), on
| an LED without heatsink. Because of buggy code, it started to
| burn my table, and by reflex I tried to pull it up with my
| hand....
|
| Not to mention the countless times a white spot remained in my
| vision for hours, after looking at such bright LEDs (buggy PWM
| signal regulation algorithm that kept going from dim to super
| bright randomly).
|
| Ears: every time I write a driver for an amplifier/DAC with
| headphones output. No matter how many precautions I take. It is
| going to happen anyway (wrong register configuration, the default
| volume was too loud, etc.).
|
| Also while listening to mic recordings done with a
| buggy/incomplete software.
| RickJWagner wrote:
| Yeah, I hurt myself once trying to pick up a new language. It was
| C#.
| renewiltord wrote:
| I learned that you could pipe anything to any device. Decided
| thirteen-year-old me was an avant-garde artist who would pipe my
| hard-drive to my speakers and create beautiful works. Was that
| just a `cat /dev/hda1 > /dev/snd` or something like that?
|
| Incomprehensible shrieking. Later that year, someone posted about
| the thing that would become the Internet phenomenon called
| 'Anonymous'. I am certain that idea was birthed from the wailing
| portal of hell I summoned that day.
| ryanmentor wrote:
| I have taught robotics enough to have hurt myself in front of a
| classroom while demonstrating a safety feature. Nothing serious,
| everyone has a good laugh.
|
| 3D printering has also led to some pinching and burning here and
| there. Worth it!
| Sniffnoy wrote:
| I mean, they should have been removing zero byte-pairs, not zero
| bytes; removing zero bytes risks shifting whether you're off by
| one or not!
| its_nikita wrote:
| This would be the case for 16 bit samples (which all of my
| files were, and most WAV files are nowadays), but for 8 bit
| samples, it would be correct to remove single zero bytes.
| Basically I just have to follow the spec more closely
| Sniffnoy wrote:
| Yes, I was relying on your statement that they were all 16
| bits; adjust appropriately otherwise.
| anoonmoose wrote:
| Burned myself many, many times, not realizing that a bug in my
| code had resulted in way too much power going through something
| or the other, and then going to touch that something. Got myself
| an RF burn that way once, too.
| SSchick wrote:
| Reverse engineered a shock collar's protocol in order to control
| it via programmable SDR antenna.
|
| Implemented a basic HTTP server that'd dispatch commands with a
| simple access control and permission system, messed up the rate
| limiting, big mistake.
|
| PS: I don't have a dog.
| sprkwd wrote:
| anymore...
| 8note wrote:
| I've melted a table once. Was testing a heat controller, and had
| the debugger left on.
|
| When the laptop the debugger was running turned off, it also
| stopped the code from running on the microcontroller, leaving the
| heater on without adding any new controls.
|
| It was a good learning to make sure there's a watch dog circuit,
| and that the microcontroller is much less trustworthy than the
| fpga
| HeyLaughingBoy wrote:
| I've done this debugging a system with a pneumatic controller
| on one of the threads. Hit a breakpoint with the compressor
| still running and after a minute, hoses start blowing off. It
| happened often enough that we learned to not use hose clamps
| since losing a hose connection was a safe failure point.
|
| However, I've read about the same thing happening to a couple
| guys testing a tank turret rotation controller. Controller is
| paused at a breakpoint, but a hardware counter is still
| accepting error pulses. Start running again and the error built
| up enough to command a full speed slew, sending the engineer
| who was sitting on the turret slamming into the wall, breaking
| a few bones.
| whitecrow90 wrote:
| the dog deserves 1000 upvotes
| pistoriusp wrote:
| Does making yourself sad count?
| bradstewart wrote:
| Almost. I was working on a web-controlled, high-intensity LED
| grow light (~1800watts of LEDs).
|
| I was building a UI element which used a single slider to both
| control the output of the light and show its current position.
| First attempt had a bug which caused an infinite loop of the UI
| setting the light to 100%, then the light setting the UI to 0%,
| and back and forth.
|
| The light was on my desk in an otherwise dark room. I
| (thankfully) don't suffer from epilepsy, but the the rapid,
| constant changing from incredibly bright to near darkness made me
| dizzy to the point where I couldn't really move.
|
| Luckily a breaker tripped after a few minutes.
| akx wrote:
| Reading what OP's goal was, my first thought was "can `sox` do
| that?". Yes, yes it can, apparently. `sox silence` cuts off
| silence at the start of a file (or in other places, suitably
| configured). http://sox.sourceforge.net/sox.html (search for
| `silence`)
| ajuc wrote:
| I was working on a software for devices that read stuff for
| blind people. Basically you put a newspaper on a table and it
| detects it and reads it aloud to you.
|
| We had a feature where user can scan whole books just by
| turning pages and save them as audiobooks or txt with "audio
| tags". Basically the device records you saying the title saves
| it as metadata, and later you can browse the list of books
| listening to yourself saying their titles.
|
| Sadly our hardware had mic near power lines and there was a lot
| of interference and the volume was pretty low, it was barely
| usable. So one of my tasks was to boost the volume and remove
| noise. I tried to write something to this effect, tested a few
| libraries, and eventually settled on just running sox in the
| background with several plugins and noise sample collected on
| our device under different loads. Works like a charm.
|
| The best thing - a few years later I google how the devices are
| doing on the market and I've found a podcast by a blind guy
| reviewing it, and he mentioned how good the audio tag feature
| is :) It wasn't the best paying job but no B2B job gives you
| this kind of feedback.
| thelastinuit wrote:
| Isn't that literally what a program writer is?
| SavantIdiot wrote:
| I built a TENS unit with an Teensy and decided to skip a current
| sensor. Real switching power supplies regulate current too, not
| just voltage (a low Ohm shunt across one of the stages to an
| opamp that tells the PWM circuit to slow down the n-fet input
| pulses, in addition to the voltage feedback power gate).
|
| The funny part is: I didn't shock myself, I punched myself.
|
| I had the electrodes connected to my pectoral muscle and I was
| adjusting the levels while holding up my arm with my hand to the
| side of my head. A random current change translated to a huge
| voltage boost, the pectoral twitched hard, and _BLAMMO_ , punched
| myself in the bridge of the nose.
|
| At least I think that's what happened. Could have been changing
| skin conductivity, but I like to think my Teensy code hurt me. (I
| eventually removed the MCU and just used two comparitors with a
| voltage-controlled duty cycle oscillator... much easier.)
| theriddlr wrote:
| Fortunately it didn't penetrate through your pectoral muscle
| and reach your heart.
| glxxyz wrote:
| Hopefully the finished code also didn't make Mistake #4: skipping
| the zero first byte of the first non-zero 16 bit integer. i.e. it
| should only skip zero words (byte pairs), not zero bytes. This
| error would probably go unnoticed for a while if it did.
| cammil wrote:
| My shame is ever present.
| layoutIfNeeded wrote:
| Ah yes, off-by-one errors when filling a PCM buffer can be loud.
| Speaking from experience, it's similarly loud when you
| accidentally fill an integer PCM buffer with floating point data.
|
| My story: I physically broke an indoor bike trainer by writing a
| mobile app.
|
| I was fed up with the rent-seeking subscription-based app that
| the vendor provided for the machine, and wanted to write a simple
| app to be able to change the training parameters over Bluetooth.
| It worked via a standard BLE fitness machine protocol, so I've
| spent a few hours creating a prototype iOS app for interacting
| with it via the CoreBluetooth framework, based on the free docs
| from Bluetooth.org.
|
| Everything worked wonderfully, up until the point of adding a
| slider to the UI for changing the "hardness" parameter of the
| current session. You see, changing the hardness parameter
| adjusted an electromagnetic braking mechanism inside the machine,
| and the slider I've put on the UI was set to its "continuous"
| mode, which meant that it was generating a steady stream of
| change events while dragging, basically at the framerate of the
| phone (60 fps). The designers of the machine probably didn't
| anticipate that someone would be flooding it with 60 "set
| hardness" commands per second, and the actuator doing the
| adjustment simply broke from the overload after a few seconds of
| me dragging the slider...
|
| I'm not sure exactly which part broke, but there was a loud crack
| from inside, and the braking power could no longer be adjusted at
| all. I could have disassembled the machine, but it wasn't even
| mine (it was lent to me by my brother-in-law to try it out), and
| was still under warranty, so I gave it back and told that it
| spontaneously broke :^)
| jakub_g wrote:
| While at university, late night coding an assembler assignment, I
| had a bug in my code, and the compiled code would lead to some
| CPU violation.
|
| After running the code, the CPU started making a super loud high
| frequency noise. The code was a super tight infinite loop, co
| CTRL-C did not work to make it stop. Hell, even power button of
| the laptop didn't react! Everything was completely unresponsive.
|
| It was middle of night and my laptop was about to wake the whole
| neighborhood, and the only solution I found quickly was to remove
| the laptop battery.
|
| Luckily I had a removable battery in my laptop back then!
| TeMPOraL wrote:
| Not my code, but somewhat related: I almost hurt myself when my
| friend used a _sonic weapon_ on me in StarCraft.
|
| Back in the ancient days, my friends and I would meet every
| Saturday and go to an Internet cafe for a few hours of playing
| multiplayer games over LAN. Mostly StarCraft: Brood War, with a
| mix of Unreal Tournament and Quake 3 Arena. During the week, we'd
| all play these games alone, in single player, figuring out new
| tricks to unleash on each other the next time we met.
|
| One of these weeks, I've learned how to properly play Terrans
| against the Zerg, and was about to demonstrate my knowledge by
| steamrolling my friend with an army of Marines and Medics[0]. In
| that game, my friend went for his usual tactic of harassing me
| with Mutalisks[1] - an effective technique, as long as he avoided
| the main body of my army. Well, on that day, he wasn't careful
| enough.
|
| At one point, he accidentally flew his entire (by that time
| pretty big, I think 24+) swarm of Mutalisks straight into my M&M
| army, which was just staging to launch an attack. My units took
| about 5 whole seconds to destroy most of his force - but the
| overlapping audio of dying Mutalisks pretty much saturated my
| headphones with high-amplitude noise. This was so unexpected that
| I wasn't able to comprehend what's going on around me (both in-
| game and in real life) for good 30 seconds, my vision blurred and
| my head was spinning.
|
| Having wasted his entire army, he lost that match. But I keep
| thinking that this could have been a viable stratagem. If he
| sacrificed half of his army like this to break my focus, he
| could've crippled me with the other half. And ever since that
| day, I kept my headphones at half the volume.
|
| --
|
| [0] - M&Ms, aka "bio", was the usual Terran army composition
| against Zerg players in Brood War. Zerg armies consist mostly of
| weak but cheap units - compensating individually low DPS and
| health with quick, mass production. Terran Marines are also cheap
| and low DPS, but in 2:1 ratio with Medics, they're healed faster
| than Zerg units can kill them, so a big ball of M&Ms is
| unstoppable to an inexperienced Zerg player.
|
| [1] - Weak, cheap, annoyingly fast flying units. Perfect for
| distraction, but their low DPS makes them completely useless in a
| straight fight against Terran "bio" army.
| squeaky-clean wrote:
| Hahaha okay I have to share a similar story now of where I've
| actually seen this weaponized. Also not my code but somewhat
| related.
|
| Somewhere in the range of 10-15 years ago I played Guild Wars
| somewhat competitively. I was in one of the top-20 PvP guilds,
| and most of the top PvP guilds were pretty friendly with each
| other. Very rarely, we'd be good enough friends with an enemy
| guild that we would know their Teamspeak or Ventrilo server
| credentials.
|
| So one day, we're doing our nightly battles like always and we
| get matched up against one of our rival / best friend guilds. A
| couple minutes into the fight, one of our Mesmers says
|
| "Hey uh guys. So.... This might be a bit much. But I know their
| Voice Chat login. I could spam their server right now."
|
| "Do it."
|
| So we all hear the "user left" voice thing, 20 seconds later,
| "user joined". And apparently what he did was open the text-to-
| speech tool, meant for users without microphones, and entered
| "!@#$%^&*()_" except copy pasted a thousand times.
|
| Which means the other guild heard from the robotic text-to-
| speech: "user joined. User Ha Ha Got U says Exclamation Mark,
| At Symbol, Pound Sign, Dollar......."
|
| They're talking trash about how could we sink so low in the
| global chat in-game when suddenly we hear "user joined. User Ha
| Ha Got U Back says Exclamation Mark, At Symbol, Pound Sign,
| Dollar......."
|
| There was a way to disable the text-to-speech on your client,
| but none of us knew that at the time. The text-to-speech
| rambling continued the entire night on both our servers and
| neither guild was able to speak. Both guilds thought it was
| hilarious but agreed never again.
| skciva wrote:
| Love this, thanks for sharing. I'm sure I'm not alone in the HN
| crowd of having fond memories of BW playing days.
|
| The sonic weapon, while accidental, feels similar to tactics
| used to disrupt concentration and logical thinking. E.g.
| taunting, trolling, cheese strategies, or your opponent getting
| tilted from something you didn't intend to annoy them with.
|
| Often think of how keeping a cool head is incredibly important
| in games like this, specifically for the pros. IdrA comes to
| mind as a technically gifted player who was often his own worst
| enemy due to his temper. He never did crack into the top of the
| pro scene (hard to do as an American in general) but felt like
| he really held himself back.
| TeMPOraL wrote:
| > _feels similar to tactics used to disrupt concentration and
| logical thinking (...) trolling, cheese strategies_
|
| Yes, we did plenty of that.
|
| Between Internet cafe days and high-school SCBW matches, I
| think I've got a dozen people to fall for the simple trick of
| writing "[a bunch of spaces to manually center the message]
| nuclear launch detected" on chat[0]. Most of the times it
| only caused a laugh from everyone, but once I actually won a
| game this way.
|
| It was the late phase of a match, myself and my opponent were
| in a sort of stalemate - his army held a strategic position;
| we both knew it, so he just held position, and there was no
| way I could get through[1]. Not sure how to solve this
| tactical riddle, I just pressed ENTER and sent the " nuclear
| launch detected" message. It caught him off-guard, and in a
| moment of frantic confusion, he decided to _move his army
| elsewhere_. Of course, there was no nuke, but I suddenly had
| an opening I could exploit and win the match.
|
| EDIT: I miss the tactical depth of SC:BW. I haven't seen any
| other game that came close. Not even StarCraft 2. In
| particular, all the cheese strategies we tried against each
| other. Most of cheesing happened early-game, but I was
| particularly fond of creative abuse of Terran Science Vessels
| in mid-to-late game...
|
| --
|
| [0] - For non-SC players: Terrans have tactical nukes in
| their arsenal. Launching one causes a warning message (and
| audio) to appear for _every player_ , which gives the
| opponent a few seconds to try and figure out where the nuke
| will land, and either kill the unit that's laser-guiding it
| in, or evacuate from the area. People who played SC a lot
| develop a habitual reaction to this message, overriding
| whatever they were doing and thinking for a moment.
|
| [1] - I unfortunately don't remember the details about the
| tactical situation and composition of armies. All I remember
| is that I was playing Terran, like I almost always did.
| alternatetwo wrote:
| This works in Age of Empires 2, too! I've seen a number of
| videos where a player writes "x has arrived in the Imperial
| Age" at a point where it would be devastating and the other
| player resigns.
| TheCapn wrote:
| I feel like Industrial Automation is cheating, especially if
| you're working with a lot of tradesmen/clients who refuse to
| follow safety procedures.
|
| We were commissioning a rather large food processing facility and
| had already verified that our PLC->Motor Starter wiring was all
| valid, but at some point the client decided they're ready to run
| a production line without testing the Motor Starter -> Motor
| wiring (bump testing the motors).
|
| Normally you'd have people away from the equipment, proper
| lockout, people with radios verifying operation, all that jazz,
| but the client decided to go around us and just start turning
| things on.
|
| Well when they went to turn on motor in section A, a drag in
| section B started due to some mistakes by the electricians.
| Section B's motor just happened to be straddled by a welder who
| was standing over it to do some work on an upper walkway when the
| thing fired up beneath him. Understandably he was _pissed_.
|
| I've never had an injury on the job (thank god) in the 9 years
| I've been doing this, but there's been a handful of close calls.
| 100% of the time its because people skip safety procedures and
| think it'll be fine.
|
| The client never did learn their lesson I'm guessing. We went
| home for the weekend, "Days since last work stopping injury" was
| reset when we returned Monday. Not sure what happened there.
| 317070 wrote:
| The context is building a robot for a sumo competition in
| university. By this time I am towards the end of my Phd, and
| regular strategies don't cut it anymore. We want to show off.
|
| Since many of these robots use ultrasound locators based on
| echolocation to find other robots, we want to eliminate those
| from detecting us. One of the strategies we wanted to try, was to
| generate sound at the right frequency ourselves, which should
| completely ruin those sensors, thus making us invisible for no
| apparent reason.
|
| So I bought a transducer used to clean ships, which was rated for
| use around the correct frequency. I connected it to a signal
| generator at an ultrasound frequency and wanted to test its
| effect on the echo sensor.
|
| Now, I am doing this sitting in a noisy lab with a bunch of noisy
| instruments, robots whirring and computer fans. Some other people
| in a corner chatting away.
|
| I put the transducer in front of the distance sensor, set up the
| program to print the distance measured, turn on the signal
| generator, and the whole room goes eerie silent.
|
| I turn it off, and luckily the sound comes back immediately. It
| appears that if you pump 100+ decibels of ultrasound in a room,
| it actually drowns out other noise! This thing was quite
| powerful. After all, it was made for cleaning ships from foul.
|
| At that point, I do realise I have no idea whether this is a safe
| thing to do for my hearing (and that of the audience), and shelve
| the idea. But I remember the split second where I thought I made
| myself and everyone else in the room deaf.
| mcjkrw wrote:
| Did it affect the other people in the room, or were they too
| far away from it?
| 317070 wrote:
| It affected everyone in the room and to a lesser extent the
| next rooms over if the door was open.
|
| Obviously, we did not shelve it right away since there seemed
| to be no permanent effect. Some people were really creeped
| out after they had been exposed in my first try. But this is
| an engineering lab, so soon enough the lab was filled with
| cowboys wanting to experience it and trying to figure out how
| it works. Meanwhile, the more safety minded people took a
| short break and went for some air outside.
|
| We stopped after the professor figured out something odd was
| going on on his floor.
| mcjkrw wrote:
| Sounds like fun. I had no idea something like that was
| possible.
| bellyfullofbac wrote:
| I wonder what the physics behind it is. I guess if you
| have an aquarium of water with low frequency waves and
| overwhelm it with high frequency waves, you wouldn't be
| able to see the low frequency ones any more. Presumably
| (IANA physicist) it's the same thing but with sound
| waves.
| moralestapia wrote:
| Very nice story, if only it were true.
|
| Let's hope your PhD wasn't imaginary either, cue "science
| reproducibility crisis".
| cozzyd wrote:
| Sounds like endianness is now a safety issue.
|
| As for me... I've certainly made it so things that shouldn't be
| hot to the touch are hot to the touch.
| qdot76367 wrote:
| As the project lead of buttplug.io, I will simply say:
|
| Yes.
| devoutsalsa wrote:
| I was hoping to find this comment.
| GuB-42 wrote:
| I guess it means the test passed.
| nargella wrote:
| Youtuber Michael Reeves enters chat
| darylyu wrote:
| A decade ago I wrote firmware for a printer company. One of the
| cases we needed to handle was to check if the print head would go
| back to the home position if I block it with my hand. Being the
| new guy and wanting to follow instructions I did literally just
| that. Later on I find out that the QA guy who wrote that test
| case was just messing with me. The other devs used a pen.
| rkagerer wrote:
| I've done something like that as well while working on audio
| firmware.
|
| Think about how many times you hit compile and there were
| mistakes vs. perfect code? To err is human nature, that's why
| it's so important to set up safety nets for ourselves when
| dealing with dangerous things. Wear your digital PPE :-).
| geocrasher wrote:
| I can think of two examples. The first is somebody else's that I
| helped them with, and the second is mine. Context: Mid-2000's
| snack-sized hosting company with less than 10 employees.
|
| A customer with a dedicated server called in one day. I knew him
| well, and he I. It was that kind of company and I loved it.
| Anyhow, he called in and said "I've been hacked!" I asked him to
| explain the problem and he said that his server wasn't working
| right and wouldn't reboot. I looked into it, and a _ton_ of
| things were missing from the file system. /bin, /boot, /dev,
| etc. Gone. So I did a restore of the server and got it back
| online.
|
| He called me up an hour or two later "I've been hacked again!"
| Same problem. Same solution.
|
| An hour later he called me up, sheepish. "I think it might be ME.
| Every time I think it's happening every time I run this command."
| I managed to get him to email me the command he was running,
| verbatim (he was copy/pasting it into the shell) and it looked
| like this: rm -rf /home/user/file; rm -rf
| /home/otheruser/directory; rm -rf /home/foo/thing; rm -rf /
| home/bar/otherthing; rm -rf /home/didyouseeit/thing3
|
| The other harm was my own. I was budding system administrator
| tasked with designing and deploying dedicated servers (this is
| before VPSs were a thing, and way before cloud computing). I
| challenged myself to learn Perl because the greybeard admin (who
| cut his teeth on PDP-11's) was a master at it and I could benefit
| from his tutelage. But I didn't. Instead I got the SAM's book on
| Perl and started learning. Having an interest in security, I
| decided that I'd write a simple Intrusion Detection System for
| our dedicated server products.
|
| I don't have the code, but it's irrelevant. A the time one of the
| bigger problems was servers getting rooted due to various
| exploits. The attacker would rewrite /bin/ls with their own
| version that hid their executables. The solution ( _obviously_
| right?) is to look at the md5sum of /bin/ls, and if it changes,
| the server _must_ be rooted, right? So I wrote code that would
| shut down sshd, close the port, and display a message via `wall`
| that said something very much like: System
| Modification Detected! Shutting down system and alerting security
| staff. YOU HAVE BEEN CAUGHT! BUH BYE!
|
| I was very pleased with myself. I couldn't understand why the
| aforementioned greybeard didn't revel in my brilliance. _sigh_ I
| deployed the script on a cron job and felt very satisfied with my
| good work. Until a call came in. "Yeah, I ran a yum update, got
| some message about being caught, and now I can't get into my
| system."
|
| Yeah that's right. I'd hard coded the md5sum for /bin/ls and had
| no means of updating it. I've since forgotten Perl but I never
| forgot this lesson: Take everything into account. Spend less time
| coding and more time thinking about what you're building and how
| it'll affect others. Since then I've written several utilities
| that are/were in use at the hosting companies I work(ed) for and
| I saved people countless time, effort, and trouble. But it sure
| didn't start out that way!
___________________________________________________________________
(page generated 2021-05-28 23:02 UTC)