Keyboard latency - <AUTHOR> https://danluu.com/keyboard-latency/ <comment><USER2> I'm surprised the "humans don't notice 100 ms" argument is even made. That's trivially debunkable with a simple blind A/B test at the command line using `sleep 0.1` with and without `sleep` aliased to `true`. To my eyes, the delay is obvious at 100 ms, noticeable at 50 ms, barely perceptible at 20 ms, and unnoticeable at 10 ms.

Not to mention that 100 ms is musically a 16th note at 150 bpm. Being off by a 16th note even at that speed is – especially for percussive instruments – _obvious_.

On the other hand, if you told me to strike a key less than 100 ms _after_ some visual stimuli, I'm sure I _couldn 't_ do it – _that 's_ what "reaction time" is.

<comment><USER3> > strike a key less than 100 ms after some visual stimuli, I'm sure I couldn't > do it

The video game "Super Hexagon"[1] is a surprisingly interesting demonstration of this limitation, and how the mind tries to workaround the problem. The higher difficulties ("hexagonest"[2]) seem impossible at first. In the easier levels you can _react_ , but now the time it takes to see the scree, parse the simple graphics, recognize that you need to turn left to avo##CRASH##...##GAME OVER##, You quickly learn that if you _think_ about the game, you are guaranteed to fail due to insufficient reaction time. Winning requires a mental state possible related to meditation: don't think, let the muscle memory do it's job (maybe from a faster path limited to the spinal-chord and brain-stem?).

[1] [https://www.youtube.com/watch?v=UrPXBSh4mqU](https://www.youtube.com/watch?v=UrPXBSh4mqU)

[2] I _finally_ got a winning 62.09s a few days ago, after many months starting at a high score of 58.57

<comment><USER4> This is also clear on rhythm games like Stepmania. Here's a random video from a keyboard user:

[https://youtu.be/TWiMnENdcyY?t=56](https://youtu.be/TWiMnENdcyY?t=56)

At this speed the player is reacting (and hitting with correct timing) about ten notes (arrows) per second. This is possible by memorizing and reacting to _group patterns_ instead of individual notes, but more importantly, reacting unconsciously.

A player can play at this level without conscious attention, even while holding a conversation, or while focusing at different parts of the screen, or spaced out. It feels like the fingers play by themselves.

This is so automatic that the player may have little feedback on how well they are doing. They may think they are making blunders and about to lose, while "the fingers" have correctly hit every note so far.

Definitely feels like a faster neural path was built.

<comment><USER3> A big difference between Hexagon and most other rhythm games like Stepmania, Beatmanias IIDX, Guitar Hero, _etc_ , is that pattern is the same. Just like musicians memorize complex music that they later perform[1] with precise timing, the same is possible for these step/note patterns. I've personally seen someone perform one of the insane speed/note-density DDR songs _blindfolded_. Humans have surprisingly good internal timing and mechanical ability, _iff_ you can memorize/practice it before hand.

Super Hexagon doesn't allow _any_ of that. The game is randomly generated each time, making memorization impossible. It's 100% reaction against the incoming wall pattern, with no pauses. Except you don't actually have time to "react".

I recommend this[2] essay that does a much better (and more poetic) job of explaining how uniquely Supper Hexagon interacts with human perception.

[1] [https://www.youtube.com/watch?v=JRUwpUqSFbI](https://www.youtube.com/watch?v=JRUwpUqSFbI)

[2] [https://problemmachine.wordpress.com/2015/04/11/hexagon/](https://problemmachine.wordpress.com/2015/04/11/hexagon/)

<comment> GuB-42 Rhythm games are not about memorization, unless you call pattern recognition and muscle memory memorization.

First of all, players don't need to memorize the charts. Take a good player, give him an entirely new chart and he will perform much better than any beginner ever will, even with memorization. Shuffle mode, where the notes are mixed and therefore can't be memorized is just a minor handicap. Much, much easier than memorizing a whole song.

There are two things at work here.

The reaction time is actually not that short. For high level play, players typically set notes to appear about 500ms before action. At that rate, anyone can hit a single note, the difficulty is that there are lots of them.

The difference between experienced players and beginners is that experiences players recognize blocks instead of single notes, just like you read entire words rather than individual letters.

</comment></comment></comment></comment></comment><comment><USER5> IMO, a better measure would be from activation of the switch, as opposed to the beginning of key travel. I don't start waiting for the character to appear on my screen from the moment I begin to press down. My anticipation begins when I feel the tactile feedback of the switch activating (or the switch bottoming out on switches that don't offer tactile feedback). On a keyboard with good tactile feedback, I might not move the switch through it's full travel -- just a little bit above and below the activation and reset points.

<comment><USER6> I wouldn't be surprised if the Apple keyboard is the fastest just because it has very shallow keys.

<comment><USER7> That's fine though. It's about the experience end-to-end. I love the apple keyboards. I still type faster on them than other keyboards, including high- end mechanical keyboards. The short keys and actuation feel responsive, yet I've never felt like I've accidentally triggered a key.

<comment><USER8> Agreed, and I don't understand the hate many people (seem to) have for them - the most ergonomic keyboards are those that require the least amount of repetitive motion. Not that there isn't an adjustment period, but some seem to pull out their Jump To Conclusion mats a little early.

<comment><USER9> "the most ergonomic keyboards are those that require the least amount of repetitive motion"

Not sure I can agree with that. I was using one of the Apple keyboards for quite a long time while running liveops on an online game (which meant rapid response whenever incidents happened, jumping into shells and constantly typing like my life depended on it), and developed fairly severe wrist problems within a couple months. To the point where I almost had to leave the job on disability, per my doctor's orders.

On the recommendation of a friend, before taking that step I tried switching to a Kinesis Advantage for the better wrist alignment and less "hard" keystroke bottom as compared to the chiclets on the Apple keyboard. It was a bit of a learning curve (~2 weeks to get up to full typing speed when using it every day, a couple more to push past it), but at the end of it my wrists got better almost instantly, and I never had problems again. My typing speed went up as well.

I'm not sure how much of that improvement is due to the better alignment of keys (there's almost no hand movement when typing, and your wrists are always neutral) and how much is due to the bigger key action and softer bottom, to be fair.

Edit: it's worth mentioning that I'm also a boxer and a piano player, so my wrists take a lot of abuse on a regular basis. YMMV and if you're not having problems, I definitely found the Apple keyboards to be very easy and fast to use.

<comment><USER10> About 18 years ago I started typing on a Microsoft Natural Keyboard Elite. That helped a lot with my wrists. Since then I have upgraded a few times but always the Natural range of keyboards from Microsoft. They are a lot cheaper than the Kinesis Advantage and easier to learn I guess. I would love to try a Kinesis though but don't dare for that price :-)

<comment><USER11> The Advantage is certainly an investment, but I found it worthwhile. They last for eons, they're built like a tank. If you have significant wrist problems you might be able to talk your employer into paying for one, I know a couple people who have done that.

The Natural keyboards are good, but IMO the Kinesis is a worthwhile upgrade for the mechanical switches, programmability and durability.

The Kinesis keyboards are actually heavily inspired by an _even more_ expensive keyboard called the Maltron. [http://www.maltron.com/store/p21/Maltron_L89_dual_hand_fully...](http://www.maltron.com/store/p21/Maltron_L89_dual_hand_fully_ergonomic_%283D%29_keyboard_- _US_English.html)

</comment></comment></comment></comment></comment></comment></comment><comment><USER12> Compare with musical keyboards where not only key number but also the velocity matters, so each key has two electrical contacts, and the whole thing is usually scanned around 10kHz for proper velocity measurement. Although key contacts are arranged in a diode matrix, the latency is usually below 2 ms, even with good old MIDI.

So neither the keyboard matrix nor the debouncing justify a latency of 10 ms or above.

It is nice to see that latency is an issue in gaming now, similar to realtime audio, where most operating systems are still not very usable - with the exception of OS X.

<comment><USER13> Now to learn to type with a keyboard... or game I suppose.

<comment><USER14> Have fun: [http://joon.be/portfolio/canabalt-100/](http://joon.be/portfolio/canabalt-100/)

</comment></comment></comment><comment><USER15> I've done a simple test with my Macbook Air, using the app "Is It Snappy", as mentioned in the comments. I used the keyboard on my macbook, which is a chiclet style mechanism. The tests were all done in triplicate except for TextEdit, (only twice)

TextEdit: ~81 ms from key depression to when LCD pixels begin to shift. For Sublime Text: ~86 ms. Both of these text editors are pretty well matched.

However, if you boot into Recovery Mode in macOS, you gain access to a GUI without a V-synced/tripled framebuffer. Terminal in Recovery Mode: ~57 ms

Finally, the kicker. macOS users have always had access to a terminal interface upon boot called single-user mode:

Single User Mode: 37.5ms (all three measurements were the same)

If you want to experience what the latency on old computers felt like while typing, simply reboot your mac, and while it's starting up, hold 'Command + S'!

<comment><USER16> try with charger plugged in, macs throttle polling to save power.

<comment><USER15> That's only true if your battery is low, and mine was above 80%

</comment></comment></comment><comment><USER17> I have something interesting about USB input latency to share.

In 2014 I built a new computer with a i5-4590 CPU, ASUS Z97-A motherboard and 8GB of Kingston DDR3-1866 memory.

One thing I instantly noticed was that my mouse (Logitech G400) would feel "delayed" compared to my older computer from 2010 (i3-550, Intel DH55HC motherboard). I could have the same OS (tested Win7 and Ubuntu), GPU and monitor between both computers and switch, and the difference was that obvious.

Another problem I had was DPC latency under Windows with driver: "usbport.sys". USB audio would drop out in correlation with DPC latency spikes and I believe it was related to the mouse latency. Under Ubuntu I had the same problem and logged a dmesg message that said "retire_capture_urb: x callbacks suppressed", with the same symptoms.

I got so frustrated I stopped using the new desktop and went back to my old desktop and a new laptop for about 2 years, after wasting my time running Prime95, MemTest86 for over 24 hours, and swapping the motherboard with another model that let me disable HPET (Supermicro C7Z87-O)

In the end, last year I decided to work on it again and swap the memory with some Corsair 2X4GB DDR3-1333 memory and just like that, the DPC lag spikes were gone, USB audio didn't drop out and my mouse stopped lagging.

<comment><USER15> Are you implying it was the RAM?

<comment><USER17> Yup. I still have both motherboards, the "broken" RAM and the good RAM actually.

I didn't believe it at first, but just being able to move the mouse around and play audio over USB and not having it lag was enough proof.

</comment></comment></comment><comment><USER18> I think this was posted to HN before, but in any case, related:

[http://isitsnappy.com/](http://isitsnappy.com/)

It's an iOS video app for measuring latency. The page has this about Apple keyboards: "This one's bizarre: the onboard keyboards on both the 2015 Macbook Pro and Macbook Air have worse latency than an external keyboard. Plugging in an external wireless keyboard improves response latency by 40 ms."

<comment><USER19> The MacBook Pro 2015 doesn't use an USB connection to connect the internal keyboard when using macOS. Instead it uses SPI. Unlike the newer MacBook Pros it still has the keyboard wired to USB, but doesn't use that because of power saving reasons.

</comment></comment><comment><USER20> The issue not mentioned in the article is number of lines on the keyboard matrix used to detect keypresses. Cheaper non-gaming keyboards can only detect up to 4 simultaneous keystrokes. Gaming keyboards can detect up to 6. That may not sound like a significant difference, but if you're moving diagonally (eg. W and D), running (Shift), holding an item (or use) (E) and jumping (space), that is 5 keys which need to be processed. Moving from my older Gaming keyboard to a generic Logitec keyboard, and I was no longer able to run diagonally in FIFA games while doing trick moves. So the non gaming keyboard made me stop playing that game.

</comment><comment><USER21> On linux, after keyboard has decided that a key has been pressed, and is ready to tell USB about it.

1\. Wait for USB to poll.

2\. Handle interrupt urb generated by keyboard.

3\. Propagate the urb to the correct driver for completion

4\. Create input events for each key event in this urb. Don't forget to use this to add to your randomness pool!

5\. Pass the key event to user space, and wake up readers.

6\. Some library reads the input event, and calls some sort of handler.

7\. Application logic updates the internal state as a result of a key press.

8\. Tells some library to redraw.

9\. Library redraws, and writes to the X server using x protocol.

10\. Magic occurs. I assume this magic is mostly just compositing windows and copying to a frame buffer, but who knows?

11\. The magic pixies run across the wire from your PC to your monitor, and at some future date, your monitor displays it.

Honestly, I am impressed that all of this gets done in less than 100ms.

<comment><USER22> Computers are fast. 100ms is eons for things that just run on CPU. With a 2ghz computer, you can count from 1 to almost a billion. That's a billion little steps that can happen in the blank of an eye.

<comment><USER21> The issue is that there are a bunch of steps that are polled (usb), or that require many context switches/interactions with the scheduler. All of this adds significant latency, regardless of the throughput of the CPU.

</comment></comment></comment><comment><USER23> PS/2 keyboards are used by serious gamers because the scan rate is higher than USB.

See [https://superuser.com/questions/16893/do-usb-or- ps-2-keyboar...](https://superuser.com/questions/16893/do-usb-or- ps-2-keyboards-respond-faster)

<comment><USER24> do serious gamers avoid v-sync ? even at 120Hz they get at least ~8ms * 2(double buffer) latency right ?

<comment><USER25> Yes, they want freesync or g-sync monitors with high refresh rates.

<comment><USER26> Or a good enough machine so that you never dip below native framerate.

<comment><USER27> Even so you would never use vsync as it will introduce input lag in most gaming engines.

<comment><USER28> Most competitive players will have their own configs for competitive play etc. I have tournament/LAN configs, online play configs, and my video settings mostly stay the same. All tuned for lowest latency and highest visibility.

</comment></comment></comment></comment></comment></comment><comment><USER29> Measuring using sound should be more precise. Even a bad mic has orders of magnitude more time resolution than a 240fps camera.

Something like click-to-beep.

</comment><comment><USER30> I find my typing accuracy is affected by keyboard latency.

An interesting way to test this would be to use a sensor to note how the point where a key was definitely "headed down" (say > 10% of its total travel) and then waiting for the message to show up.

In older keyboards the main CPU was doing some of the debouncing so it knew "right away" that a keyboard was pressed. That cuts down on latency as well.

Another test case might be to put a USB -> PS/2 adapter on the keyboard. This lets the onboard CPU know to send the keycode as soon as it has decoded and debounced it.

<comment><USER31> I'd really like to see more research done on this subject.

I clock about 15 keystrokes per second while typing full speed, and I find serious issues with accuracy using most contemporary keyboards, even on gaming and higher-end OEM equipment.

Edit: Some keyboards are also practically unusable due to dropped inputs above a certain rate.

</comment></comment><comment><USER32> Isn't a big part of the reason "gaming" keyboards cost so much because they can register more than three keys (sometimes four) being hit at the same time - something many cheaper keyboards cannot do due to the way they are wired?

<comment><USER33> Yes, n-key rollover _sometimes_ comes up. In practice, I've only had it become an issue in the wild either when more than one player is sharing the keyboard or, in some rare games, primarily simulators, where you might need to hold multiple keys.

<comment><USER34> I've had keyboards which where marketed as professional keyboards have very obvious problems with this. Specifically, I had a Logitech MX5500 and if you where holding down the 'D' key and then pressed the 'S' key, the keyboard would never send the 'S' key (though I might remember those keys backwards). This is a problem because many a video game has you use the 'WASD' keys as direction keys to control movement, so trying to move backwards and to the right would fail.

So it's not like nobody experiences this problem.

<comment><USER35> As mentioned in my other comment, that is a symptom of ghosting, not of being limited to the standard 6-key rollover set by the usb spec.

</comment></comment></comment></comment><comment><USER36> The experience of 100 ms latency is definitely noticeable. Ask anyone who's ever ssh'd to a server across a continent or ocean. Empirically, I notice I have a lot more typos in such a situation.

</comment><comment><USER37> This great article and the other recent one from him started me down the path of thinking about an end-to-end optimized modern computer and operating environment.

If you _could_ (not saying it's easy or even necessarily practical at all) drop replace all of the slow stuff like high-latency keyboards, syscalls, CPU- GPU communication (i.e. effective HSA) and build some proof-of-concept operating environment (that was explicitly incompatible with existing stuff).. I think you could get a pretty fast computer. It would be fun to try.

Anyway is there a Cherry MX keyboard that has low travel and low latency overall?

<comment><USER35> Not sure about low latency (especially since this article seems to have failed to test that at all...), but for low-profile cherry-style switches you could look into the new low-profile Kailh switches, which are sort of based on the old Cherry ML switches. The only manufactured board you can buy with these right now is the Havit HV-KB390L[1], as far as I know.

If you are really tied to the cherry mx style you could check out the kailh and cherry "speed" switches, which have slightly shorter travel distance and a higher actuation point.

[1] [https://www.amazon.com/Mechanical-Keyboard-Extra-Thin- Switch...](https://www.amazon.com/Mechanical-Keyboard-Extra-Thin-Switches-HV- KB390L/dp/B0722GG88M)

</comment></comment><comment><USER38> It would be cool to look at Linux vs the BSDs on this. BSDs (dragonfly and openbsd) do feel like they react faster to keyboard input, but I've always wondered whether it's actually faster or just imagined.

</comment><comment><USER39> I just gotta say I LOVE these un-styled pages. I come across them more and more – a result of us all being sick of bloated web?

<comment><USER40> You should try the readability mode in Firefox

</comment></comment><comment><USER41> This article prompted the following questions for me:

1\. How well did the historical systems do, and why? Presumably non-negligible key travel is not a modern invention.

2\. How much of the latency is key travel? (i.e. what korethr said)

3\. How exactly were the keys pressed/how fast were they pressed? All the article says about the experimental setup is "The start-of-input was measured by pressing two keys at once – one key on the keyboard and a button that was also connected to the logic analyzer."

<comment><USER42> 1\. i suspect it comes down only a single program having full reign of the system at a time, and everything living in either RAM or ROM (no page faults etc).

</comment></comment><comment><USER43> On the debouncing thing, Razer announced one with optical switches instead of electrical.

<comment><USER44> Yep, also capacitive and Hall-effect switches don't need debouncing.

<comment><USER43> I think a couple of my Apple II clones had hall-effect keyboards. Too bad their graphics are not very competitive today.

</comment></comment></comment><comment><USER45> So.. I noticed the huge latency difference between (Alt+Ctrl+F1) tty1 and Gnome with X11. After some tests using "Is it snappy?" app and my das keyboard I decided to check if Wayland had similar latency problems. After switching to Wayland I cut 40ms off my keyboard latency.. hmm. I don't know why that is but I assume there's some sort of frame buffer latency. The only thing I miss now is Plank :[

</comment><comment><USER46> Here is a video where someone is testing USB latency, although with USB hubs:

[https://www.youtube.com/watch?v=nbu3ySrRNVc](https://www.youtube.com/watch?v=nbu3ySrRNVc)

</comment><comment><USER47> I'm looking for a low-latency, NKRO, chiclet-style keyboard. Would freak out if it also had individual LED backlights. Build it, and I promise to successfully market it as a musical instrument.

P.s.: I currently use external Apple keyboards to perform & make music (with things like [http://qwerkey.xyz](http://qwerkey.xyz)).

</comment><comment><USER48> Has anyone made the "direct wire to every key" keyboard? Getting rid of debouncing would be kind of cool.

<comment><USER49> Wiring each key to an input would get rid of scanning, not debouncing.

</comment></comment><comment><USER50> I've been wondering about this for longer than I care to admit. I always felt the perceived responsiveness of my old sparc 20 was much better than pcs I used 15 years later, and I thought it had to do with keyboard latency and interrupt processing.

</comment><comment><USER51> I probably missed something but:

> It's possible to get down to the 50ms range in well optimized games with a > fancy gaming setup, and there's one particularly impressive consumer device > that can easily get below that.

Is the device in question mentioned anywhere?

<comment><USER52> Yes, the apple magic keyboard with 15ms latency.

<comment><USER51> Oh. I guess I interpreted the passage I quoted as referring to a complete keypress-to-display latency, which wasn't tabulated in the article (vs. keypress-to-USB). And the Apple keyboard isn't that much of an outlier with the next-fastest keyboard coming in at 20ms. So I'm a bit let down but I'll accept it.

</comment></comment></comment><comment><USER53> And Apple try very hard to optimize input latency on Apple Pencil which i believe the newer version on iPad Pro is now sub 10ms?

I think we should have rule on OSX and iOS where this sub 10ms latency is standard.

</comment><comment><USER54> I'm using a das keyboard 4 on an iMac and did some tests to see what kind of latency different programs had for the cursor moving with just personal observations. iTerm seems to be significantly slower to move the cursor than Chrome or TextEdit.

Before seeing this article I've thought that iTerm seemed slow before to show text, it'd be nice to see a writeup on how long it took for text to render after keyboard input on a few different programs to get developers to use the same methods to keep this as quick as possible.

</comment><comment><USER55> Completely missing the fact that enthusiast keyboards still prefer PS/2 for NKRO (no key-rollover) and HW interrupt support which results in sub 10ms delays.

<comment><USER56> NKRO is N-key rollover, as opposed to 2-key rollover (limited to pressing 2 keys at once) - N meaning any number

</comment></comment><comment><USER57> I'm confused. the first claim is Apple 2 has a fast response The second claim is that key travel matters. Short = faster

But Apple 2 keys are not short travel keys

</comment><comment><USER58> I feel so vindicated for gaming with an Apple keyboard on my Windows PC cus it was the only thing I had hanging around

</comment><comment><USER59> 7 lines of CSS to make this website more readable:

        body {
          max-width: 40em;
          line-height: 1.5;
          font-size: 18px;
          margin: 0 auto;
          font-family: sans-serif;
        }

Copy and paste them into your DevTools and enjoy this great post!

<comment><USER60> What's it with font-size recommendations getting larger and larger every year? When I started writing CSS for my websites, the standard font-size was 12px (sometimes 10 or 11).

<comment><USER47> The dot sizes of screens are decreasing. Also the resolutions were lower, so we had to save space.

</comment></comment></comment><comment><USER61> You have to look at fingertip travel time, not keycap travel time, for a more complete picture.

Those cracker-thin chicklets that comprise the Apple Magic keyboard will only make you faster if you rest your fingertips on the caps.

That may not work so well in all games; it depends on the controls. If you rest a finger on a certain key, but a situation requires you to use that finger to react with a different (though near by) key, you're at a disadvantage compared to having the finger raised so that it can strike either key with equal speed.

</comment><comment><USER62> Makes me wonder about the latency of bt keyboards as well as my custom made keyboard controller _.

_ HHKB JP with Hasu's controller

</comment><comment><USER63> I can't see the merit in that particular test. It's the actuation point that matters.

For more depth than anyone really needs, see the r/mechanicalkeyboards wiki

[https://www.reddit.com/r/MechanicalKeyboards/wiki/switch_gui...](https://www.reddit.com/r/MechanicalKeyboards/wiki/switch_guides)

</comment><comment><USER64> Has anyone benchmarked the keyboard latency of recent generations MacBook Pro Retinas?

<comment><USER65> I don't have a way to measure raw USB events, but it takes around 90 ms between me pressing a key on the Macbook's (2015 model) keyboard and a character showing in the TextEdit.app.

<comment><USER66> Some of that is surely in the OS and display however. I wonder how you'd go about measuring the latency of a laptop keyboard?

<comment><USER67> Patch into the flex cable between the keyboard and motherboard. Maybe if Dan and bunnie cross paths...

</comment></comment></comment></comment><comment><USER68> By coincidence I just replaced my last Apple Keyboard with an MS 4000 today. I find it curious that they are both at the top of the list, even though I've never considered hardware latency an issue.

</comment><comment><USER69> So maybe i could rig up my Apple 2 as a keyboard....

</comment><comment><USER70> I've been experimenting with alternative protocols to HID. I'm not satisfied with fixed-interval input polling out of sync with vsync; it takes way too many samples to reach the desired latency (and especially jitter!) numbers.

As for keyboards, there's no real excuse not to just have a Bigass™ shift register (or a couple) and address every keyswitch with a trace and an interrupt crossbar. There's a limit to how cheap a good-enough keyboard can ultimately be, so a difference of a few cents in BOM and assembly, and slightly more intricate membrane layouts is not worth crying over.

The methodology here is broken for non-linear long-travel keyswitches, for which the "point at which the key starts moving" is the wrong point to measure. For example, I'm typing this on buckling-spring keyswitches. The break for these switches is part way down the stroke, this is intentional and does not contribute to "latency", since the intent of depressing the key above the break is _not_ to send the keypress at that moment, but to be ready to cross the break once the previous key has been pressed. This is very similar to how good handgun triggers typically function: a light, firm, and smooth _uptake_ before a _break_ , and hopefully with a _reset_ very near the _break_. It communicates to the user how close they are to actuating the switch.

In the case of linear long-travel switches (i.e. Cherry MX Red style switches), it's harder to decide where to consider the key "pressed", but in the case of non-linear long-travel switches (buckling spring, Cherry MX Blue) it's clear that the _break_ is when the keypress should be registered, not the beginning of the _uptake_. In the case of non-linear switches, they don't need to bottom out to register keypresses, so they can have exceptionally low latency. With sufficient spring stiffness, and a long enough heel, buckling spring keyswitches should take less time to actuate than scissor-dome switches.

Added:

Regarding the testing methodology, it seems like you could do better with a combination of a motor, an armature, and a small strain gauge (or a measurement of motor load). The motor will apply consistent force at consistent peak acceleration between tests if you input consistent voltage. For non-linear switches, you can measure the break time as a junction in the applied force across the strain gauge or in the motor load on one of the analog inputs on your logic analyzer; for linear switches, you can measure the start of actuation the same way. Motor load would work just fine, since you're not interested in the exact force exerted, and thus don't need to calibrate for the efficiency of the motor.

<comment><USER71> Super interesting post, thanks. Do you have any more details on your HID alternative to share? You'll need a custom USB driver for that, right?

</comment></comment><comment><USER72> "It all started because I had this feeling that some old computers feel much more responsive than modern machines."

s/modern/recent/

"For example, an iMac G4 running macOS 9 or an Apple 2 both feel quicker than my 4.2 GHz Kaby Lake system."

Kaby Lake system running OSX? I have one of the last G4 that came with OS9. Based on intuition it would make audio applications "feel" slower, when OSX came out I did not "upgrade", despite the marketing at the time. I guess I am not the only one.

"It turns out the machines that feel quick are actually quick, much quicker than my modern computer - computers from the 70s and 80s commonly have keypress-to-screen-update latencies in the 30ms to 50ms range out of the box, whereas modern computers are usually in the 100ms to 200ms range."

"... where we are today, where can buy a system with the CPU that gives you the fastest single-threaded performance money can buy and get 6x the latency of a machine from the 70s."

Methinks when someone spends that kind of money on a system, they will never accept findings like these. They are not likely to respond "inquisitively" to someone who describes achieving better speeds with a "less powerful" system that costs a fraction of what they paid. More likely, they will try to discredit them.

<comment><USER42> I suspect the culprit is not the hardware, but the software.

Back in the day there were very little between the keyboard and the screen, and most of it were either in rom or in ram.

Never mind that unless one were dealing with a big iron or similar, multi- tasking was a big nope.

These days most OSs have 10s to 100s of processes going right after a first boot on a clean install. And all those can trip something at "random" intervals.

<comment><USER73> Just the other day I replied to a Reddit thread, and told a gamer who experienced periodic frame drops in CS:GO to check the other system processes. He protested that he had nothing else running, but elsewhere in the thread a Task Manager screenshot revealed that Windows 10 Smartscreen Filter was chewing through files and bottlenecking the HDD(a problem I've also experienced).

Basically, desktop Windows has crossed the threshold of "needs SSD" to perform adequately. And in theory that shouldn't impact the performance of an older game, but it does, because what happens next is that the scheduler misallocates process time and throws off everything.

<comment><USER42> More like desktops in general, and smartphones as well even after the decade long reboot, are running out of actual new stuff to cram in there (in a sense the desktop, bar some security issues, was done with Windows 95).

Thus desktop developers keep adding questionable "quality of life" stuff like file system indexers to justify their continued version releases (never mind avoiding doing actual code maintenance).

</comment></comment></comment></comment><comment><USER74> I stopped after I read "Apple 2" for the second time.</comment>


Show HN: My little app Owe.to - <AUTHOR>

Now that my little app (http://Owe.to/) got force launched (bit.ly/ePbEb3), would love to get feedback from you all. I'm still a little embarrassed by it but I think it is time to let it out to play. <comment><USER2> Cool app idea! You should integrate with the WePay API so that when you remind people, they actually have the ability to pay.

<https://www.wepay.com/developer/reference>

Feel free to email me if you have any questions about the API.

<comment><AUTHOR> That sounds like a great idea. Added to my todo. Thanks.

</comment></comment><comment><USER3> I love the domain. Perfect for a simple web app.

A few things:

1\. I would move the 'About' tab over next to the 'Owed to You' tab. Stretching it across looks slightly off.

2\. The last line of your copy could use a rewriting. Maybe "Try it out! Just use your own e-mail address."Or just take out the comma.

3\. Is there a way to remove yourself from the e-mail list on the site? (not just in the e-mail.)

<comment><USER4> I second on #3. There should be a quick link to log in and remove reminders.

Also very curious, what is the monetization strategy here.

<comment><USER3> Doesn't seem like a business; more of a web app.

But maybe a small ad at the bottom of each e-mail?

<comment><AUTHOR> That idea has crossed my mind but you need a lot of users to make it viable.

</comment></comment></comment></comment><comment><USER5> Take a look at <https://www.whosebill.com/> for a more sophisticated take on the idea

<comment><AUTHOR> Whosebill.com looks neat. I'm aiming for a simple, just-get-it-done approach. There isn't even a signup on mine.

<comment><USER6> Not having gone past the front page, I much prefer the 'owe.to' approach to 'whosebill'. Having seen both of them for the very first time today, I can see myself using owe.to over whosebill 9 times out of 10.

That said, whosebill does seem to have a ton more features, but I prefer the narrower focus. The graphs on the whosebill homepage are confusing, even if they're only pictures.

It looks good. I wouldn't say that it's _pretty_, per se, but it's far from ugly, and appears to be 100% functional. Kudos.

</comment></comment></comment><comment><USER7> Great idea, Sandeep!

Curious: what are you using for the email notifications? I'd love to have a discussion with you about that.

<comment><AUTHOR> I'm using the hosting provider for email delivery and already hitting the limits :)

Was looking at moving to one of the email delivery services. Would love to talk. My email is in my profile.

</comment></comment><comment><USER8> I didn't know Toronto had a TLD.

Also, I hope no one I know finds out about this app ;)

</comment><comment><AUTHOR> Clickable: <http://owe.to/>

</comment><comment><USER9> Have you checked out ohdontforget.com? Basically the same idea.

<comment><AUTHOR> Nope. Looks great. Thanks.

</comment></comment><comment><USER10> I must say its a pretty cool idea. Love it..</comment>


Children use time words like "seconds" and "hours" before they know what they mean - <AUTHOR> http://digest.bps.org.uk/2015/05/children-use-time-words-like-seconds.html <comment><USER2> Children use A LOT of words without knowing what they mean exactly, and often without knowing what they mean at all. This isn't exactly a phenomenon specific to 'time'.</comment>


Who Is Right? - <AUTHOR> https://www.whoisright.app <comment><AUTHOR> Hey HN,

A little project I made last weekend when my wife and I got into one of our many light-hearted debates. Sometimes, we can't agree so we ask our friends. Sometimes, we like to hear other people's opinions on our thoughts. So I made whoisright.app.

It's a Laravel web app that allows you to post a question, your take on that question, then invite the one person you want to debate, discuss, or argue with. They'll be sent an email and can sign in and can put in their take on your question. The public can then vote on which side they feel is more right, in their opinion.

[https://www.whoisright.app](https://www.whoisright.app)

Feel free to sign up and post some questions and begin some debates! I know it's very MVP and missing some features so I'd love to hear any feedback or thoughts! Thanks!

<comment><USER2> In the confirmation email, the displayed link is correct ([https://www.whoisright.app/verify- user/...](https://www.whoisright.app/verify-user/...)) but the one in the clickable button takes you to some page that just hangs ([https://email.mg.whoisright.app/c/...](https://email.mg.whoisright.app/c/...)).

Also add your email address on the website so people can send you feedback :-)

<comment><AUTHOR> Hey bemmu,

Thanks so much for taking the time to reply!

Also, thank you for finding this issue! I'm going to fix this right now. Great point. I'm also adding in my email for feedback! :)

Look forward to your questions!</comment></comment></comment>


Apache CouchDB 1.3.0 Released - <AUTHOR> https://blogs.apache.org/couchdb/entry/apache_couchdb_1_3_0

<comment><USER2> Bringing the documentation into Sphinx is a big win for a lot of developers interested in CouchDB.

<https://couchdb.readthedocs.org/en/1.3.x/></comment>


The Fallacy of Technical Debt - <AUTHOR> https://medium.com/@fpgaminer/the-fallacy-of-technical-debt-202f7406337e#.4wxxnqksy <comment><USER3> > This is because the real cost of software is time.

Exactly... And so it follows that technical debt is the debt of time. What your quick and dirty ^solution^ achieves today will be more _expensive_ in terms of time, to fix/scale/debug/maintain tomorrow.

How is the author not seeing this? There is a cost and a value to everything. A highly valuable quick and dirty solution today makes sense only if it will cost less to throw away, replace or clean up.

Sigh, I'm tried of this industry that keeps not just reinventing wheel but rediscovering the entire process that leads up to it.

<comment><USER4> "What your quick and dirty ^solution^ achieves today will be more expensive in terms of time, to fix/scale/debug/maintain tomorrow."

This is also a fallacy. You are assuming that you know how and what to do better today to make it less expensive tomorrow. The simple truth is - <USER2> don't. You can only know how to do better once you do it in a quick and dirty way and it might not even be worth it.

Technical debt is very broken and very misleading concept that should be avoided.

<comment><USER3> My comment itself is a good demonstration of the point I was trying to make. I anticipated the possibility of misunderstanding or misinterpretation of my first statement and put in the time to add the second to qualify my point.

I did not intend make a blanket generalization against quick and dirty solutions (ref: google about Doug McIlroy and Don Knuth trying to solve the same problem[1]). I am in fact stressing that there exists a tradeoff that needs to be considered. Usually the tradeoff is made towards less work (ie: lazy programmers) -- less work _for the foreseeable future_ (and if you can't forsee at least somewhat in the future, you're not doing it right).

By responding to just the first part of my comment you've confirmed the last part.

[1] [https://www.google.com/search?q=literate+programming+the+wor...](https://www.google.com/search?q=literate+programming+the+word+count+problem)

edit: I mistaken said Bill Joy instead of Doug MaIlroy initially

<comment><USER4> "and if you can't forsee at least somewhat in the future, you're not doing it right"

This is the idea I'm trying to discuss. You cannot know future trade offs in advance. You can only make a bunch of assumptions about the future. But the more assumptions you make, the fewer of them will be correct or worthy of the time and even more will not be addressed at all. Which defeats the purpose of the technical debt concept.

Jumping into the future with the "no-technical-debt" solution is generally a bad idea.</comment></comment></comment></comment>


Commenting Practices in Open Source - <AUTHOR> http://dirkriehle.com/2009/08/27/the-commenting-practice-of-open-source-completed-for-now/

<comment><USER2> I do not understand what is he calling boilerplate comments. I get that boilerplate headers are copyright/licensing headers, but what are boilerplate comments ?

<comment><USER3> Comment stubs that were automatically generated by an IDE, but don't actually convey anything.

(The articles leading up to the posted one discuss "boilerplate comments".)

Also, the block comments preceding a method that are _just the name of the method_ would probably count...</comment></comment>


To my male engineering/computer-science/hacker friends - <AUTHOR> https://medium.com/@dancrisan/to-my-male-engineering-computer-science-hacker-friends-6a9acca765a8#.jz2j5z3j6 <comment><USER2> My partner and I (both women, both technical) have never been asked to join any team at any hackathon we've ever attended, and we've been to several. We always end up having to form our own team, which nobody else technical joins (because of having a female technical lead).

There was one hackathon where we were actually bumped from presenting, because two women couldn't have possibly come up with anything worthwhile.</comment>


Ask HN: Using the Computer without a Mouse/Trackpad - <AUTHOR> Hi everybody,
For the last week, I tried an experiment. I wanted to do everything on my computer without using any pointing device at all. I used mainly terminal programs to do my work (mutt, vim and w3m to name a few), and it worked out better than expected.
I really feel that I'm way faster when I only use shortcuts and not touching my mouse once.
In the beginning, it was a little bit confusing, but I really enjoy it now. Even when I do have to step outside the terminal, browsers like `quteborwser` make it so easy to surf the web without a mouse.
Has anyone tried this out before too? I know that everyone who worked on a PC in the 60s/70s has, but that's not the point. I really want to know if someone tried it in the 5-10 years. If so, did you stick to it? And if not, why have you disliked it? <comment><USER2> I do enjoy it but I always seem to gravitate back to using a mouse.

Some sites work very well with just a keyboard for example, using shortcuts on facebook to navigate and interact with posts.

As soon as I interact with other sites and programs that need a mouse I just stick with it from there.</comment>


Hidden Tribes: A Study of America's Polarized Landscape [pdf] - <AUTHOR> https://static1.squarespace.com/static/5a70a7c3010027736a22740f/t/5bbcea6b7817f7bf7342b718/1539107467397/hidden_tribes_report-2.pdf <comment><USER2> The linked report is WAY more interesting than the article. Covers much more ground (not just 'PC culture') and in a better way.

I just started reading it not knowing what I was in for, somehow both easy to digest but still broad and not that shallow. Infographics, survey responses, profiles of 'typical' people in each segment of the political spectrum, etc. Quite an enjoyable presentation.

[https://static1.squarespace.com/static/5a70a7c3010027736a227...](https://static1.squarespace.com/static/5a70a7c3010027736a22740f/t/5bbcea6b7817f7bf7342b718/1539107467397/hidden_tribes_report-2.pdf)

<comment><USER3> Alright, let's switch to that, since most of the thread below is just semantics about the term 'political correctness'. All: I'm sure we can do better than that, so please try.

(The submitted URL was [https://www.theatlantic.com/ideas/archive/2018/10/large- majo...](https://www.theatlantic.com/ideas/archive/2018/10/large-majorities- dislike-political-correctness/572581/?single_page=true))

<comment><AUTHOR> Do you really think most people have the time to read a _160 page_ report?

<comment><USER2> I got to page 38 before I even thought to look at how long it was, it's kind of engrossing, and because it's mostly quotes and infographics, it doesn't take long to go through a page, it's not Mochizuki's proof of the abc conjecture or something.

It only took ~15 minutes to get that far? What's the difference between spending 15 minutes reading hn and 15 minutes reading a report? It's still 15 minutes.

Open it up, I bet you'll find it interesting and get further than you think in a short amount of time.

</comment></comment></comment></comment><comment><USER4> >But since the survey question did not define political correctness for respondents, we cannot be sure what, exactly, the 80 percent of Americans who regard it as a problem have in mind.

<comment><USER5> I agree it would be nice to have a clearer picture of what anti-PC folks think of themselves as being against (and what pro-PC folk think of themselves as being for).

However, it's also useful to know people's feelings towards a phrase _without_ defining it, to understand what they feel about the term as _they_ interpret it. This gives a sense of the political atmosphere surrounding a term, which can be just as important as what the term actually means.

This isn't how things would work in some "ideal", perfectly rational world; but that's politics for you.

</comment></comment><comment><USER6> This article makes me think about the disdain some people might have against the 'liberal elite', and according to the article political correctness does seem to be a trait of that particular class.

I think the key is to understand the reason why many Americans reject PC language and culture. Is such language overused due to a fear of being accused of *ism?

Or is it because people believe that communication should be empathetic by default, and doesn't need sanctimonious words to show it off? I generally assume there is no malice in someone else's words, which is especially helpful on the (mostly text-based) internet, where there aren't any para-verbal cues.

<comment><USER7> I found charitable interpretation a good indicator of whether someone is virtue/tribal signaling or interested in intellectual exchange, finding truth and acting moral.

<comment><USER8> I've repeatedly found that the ability to paraphrase and summarise the opposing positions in a way that the opposition can agree with, is a good indicator of whether someone is interested in, and able to have a meaningful discussion in a controversial subject.

It might be illuminating to compare this heuristic to the requirement of a decent scientific paper to summarise _related work_ properly.

</comment></comment></comment><comment><USER9> > _One obvious question is what people mean by "political correctness." In the > extended interviews and focus groups, participants made clear that they were > concerned about their day-to-day ability to express themselves: They worry > that a lack of familiarity with a topic, or an unthinking word choice, could > lead to serious social sanctions for them_

The problem is that _everyone_ is hyper sensitive to specific things, even where they claim to oppose political correctness. For instance, most "devoted conservatives" dislike political correctness, but made a big issue out of Obama's passing remarks about "you didn't build that" and "cling to guns and religion". They took great exception to Clinton's comments about "basket of deplorables", but didn't have a problem with Trump's "rapists and drug dealers".

Ie, when the other side says something that offends you, it deserves to be made into a big issue. When the other side is offended by something you say, political correctness has gone too far.

<comment><USER10> The difference between Republicans and conservatives used to be minimal. I'd say that conservatism swung so far right that most long term Republicans didn't even realize it. The vast majority of people who vote Republican or Democrat do so nearly without any understanding of a particular candidate's positions apart from the general party platforms and only votes on one or two issues that are personally important to themselves. With how gerrymandered the country is, especially in many Republican controlled states, the middle ground for centrists Republican and Democratic candidates is gone.

This was started by a concerted effort in the 1980s to turn the country more conservative, which was very successful and backlash to the liberal culture expansion of the 1960s through the 1970s. I don't however believe that the architects of that plan foresaw the damage that would come from polarization.

America has a large reckoning coming as we must learn and define what we want our national image to be. It's certainly no longer the shining city on the rock. We're far closer to the loud, obnoxious uncle at the dinner table talking about what we did in the past. Unless we can find common ground as a country, we're destined to fade in global power far quicker than we should have.

Edit: Typo

</comment></comment><comment><USER11> "Political correctness" is almost always used as a pejorative. So saying that surveyed Americans dislike it its about as surprising as saying that Americans think racism is bad in principle in surveys - it does not mean that Americans don't on-mass practice it even if in principle they violently oppose it. The only "political correctness" people identify is the language of their political opponents.

Political correctness is most often used as a criticism of the politically sensitive language used by different groups. As a very American example, you just need to look at the terms "Pro Life" and "Pro Choice". From the perspective of the opposing groups "Pro Life" amounts to "Pro subjugation of women at the cost of their individual health and political power", and "Pro Choice" amounts to "Pro infanticide sinful hedonists". Both groups have significant political power in American, and wielding that power they demand respect behind these "PC" labels.

Political correctness isn't new or some kind of distinct ideology, its an exercise or attempted exercise in political power to shape the language and outcomes of our politics. Its our basic civility and the structure of power. What is new maybe is the pace of social and political change of the past 100 years that has made people notice the exercise in new political power more often.

<comment><USER12> The term "politically correct" started its life in the 60's and 70's when leftist groups used it IRONICALLY to criticize other leftists who were excessively dogmatic.

Somehow in the early 90's the term got lifted by the hard right to describe _anyone_ who they believe promoted progressive ideas. I remember when Rush Limbaugh was in his peak, he used the term "PC" constantly. Since that time it has come to be used exactly as you describe by the hard right and increasingly, the mainstream, which happens to also be shifting to the hard right.

Whatever the history, "politically correct" has always been an insult. While there certainly are people who think they're 100% correct in politics, no reasonable person wants to labeled by others as "PC".

Unfortunately, there's been some developments which make me wonder whether some are actually embracing the term without irony. That's disturbing and it is a sign that really, really bad stuff may be coming.

<comment><USER13> What I find troubling is the recent trend of people feeling they have to be "ideologically correct". I started to notice that attitude as the right united under a common party discourse against Obama, even when some of that discourse was obvious bs. I guess media could have played a big role, bubbling up a single "voice" (What a weird world this is today, where I find myself missing John McCain)

</comment></comment></comment><comment><USER14> Two thoughts:

1) "Political correctness" has always meant "excessive language policing from the left" rather than anything more concrete—it was a pejorative term even before it was introduced to the general public in 1990 on the pages of the New York Times—so it's no surprise that it has a bad reputation.

2) It's kind of ironic to use a research paper by a group called More In Common, who seek to counteract polarisation, to slam a particular political group.

<comment><USER15> I don't think it's ironic. If that political group is not receptive to this reasonable attempt to show them how they're going wrong, that's on them and rather reinforces the article's gist.

<comment><USER16> The point is who will not say they dislike something defined to be a pejorative?

</comment></comment></comment><comment><USER17> > Among the general population, a full 80 percent believe that "political > correctness is a problem in our country."

From experience that's more or less correct. I'm on the left and the majority of my friends are also on the left and we make fun of PC.

Why are so many people easily offended by language? I remember when Larry David did a funny bit about holocaust and people gone mad, "you can't joke about the holocaust". I think this is the PC that most people hate.

</comment><comment><USER18> This article gives me hope. I like the idea that we're more alike than it may seem at times.

</comment><comment><USER19> PC = political correctness. What is wrong with people that invent a new abbreviation every second? Good CB (click bait)

<comment><USER20> Huh? PC isn't new. That abbreviation has been around since the 80s or 90s.

<comment><USER21> Personal Computer is probably what most people think, especially here.

<comment><USER22> Indeed, the main reason I clicked on this was genuine curiousity as to why Americans hate PCs!? What kind of underground PC culture exists to hate? Suffice to say I was a disappointed.

<comment><USER23> I got a chuckle out of that. Thanks.

</comment></comment></comment></comment></comment><comment><USER24> Thankfully, Google exists. Let me help you:

[https://www.google.com/search?q=political+correctness&ie=utf...](https://www.google.com/search?q=political+correctness&ie=utf-8&oe=utf-8&client=firefox-b)

<comment><USER25> Your answer is condescending and you failed to even attempt to understand what the study said.

Just because you managed to Google ONE definition of PC culture, it does not mean the people answering the study poll had the same thing in mind. Which is a bit of problem for methodology and the result itself. Especially in such a wide social topic like political correctness.

<comment><USER24> That's like saying "this study of people saying they like the red colour is worthless because they haven't defined what the red colour is"

PC has one definition, but of course you can make up others

<comment><USER26> > PC has one definition

And definitions are never complex, multifaceted or problematic, eh? Thank goodness language is so simple and clear.

</comment></comment></comment></comment><comment><USER27> Since "PC Culture" is primarily intended to protect minorities, that shouldn't be surprising at all.

Bear in mind that any working democracy _has_ to actively protect minorities, because otherwise it would decline into a tyranny of the majority.

 _Edit: There was a bit of a misunderstanding here, I 'm afraid. Please see me other post about it. In a nutshell, you need to take the actual victims of discrimination seriously or have a lot of empathy, otherwise it will be difficult to judge the many arguments for and against some particular form of PC._

<comment><USER28> _Since "PC Culture" is primarily intended to protect minorities_

I am a minority. No it isn't. It is simply one faction of the dominant caste using us as pawns in its war on another faction.

<comment><USER29> I don't know what this is being downvoted for. I'm not a minority __, but it 's also obvious that a lot of PC stuff is virtue-signalling, combined with a implicit reproach towards minorities for being sensitive. I mean, realistically, nobody gives a damn if you use the wrong word for a disability. Disabled people care that they're not accounted for in political decision- making that whole areas of wealthy countries are basically impossible to live in, whole careers that would be perfectly viable are closed, and so on. I'm not black, but I'm pretty sure nobody black is angry about people using the wrong words. I'm pretty sure they're angry about the fact that police basically have carte-blanche to imprison and murder their children over bullshit.

 __PS: I am actually mildly disabled. But then, that 's the thing, isn't it? Everybody is going to be a minority at some point in their life, if you're old, if you have kids, if you have an injury - then you get the hard side of a society that caters for white able-bodied men.

<comment><USER28> _virtue-signalling, combined with a implicit reproach towards minorities for being sensitive_

Indeed. Here's a concrete example of PC culture banning a word _and_ shaming people who actually have the condition [https://www.epilepsy.org.uk/press/facts/brainstorming- offens...](https://www.epilepsy.org.uk/press/facts/brainstorming-offensive)

 _93 per cent of people with epilepsy did not find the term derogatory or offensive in any way and many felt that this sort of political correctness singled out people with epilepsy as being easily offended._</comment></comment></comment></comment>


A Deep Dive into iOS 10 Messages Extensions - <AUTHOR> http://twocentstudios.com/2016/06/24/a-deep-dive-into-ios-messages-extensions/ <comment><USER2> Great summary, thanks!</comment>


Designing a Watch Face for Android Wear - <AUTHOR> http://twotoasters.com/ideas/2014/designing-a-watch-face-for-android-wear/

<comment><USER2> Good tips!</comment>


Are YOU Replaceable? - <AUTHOR> http://www.readwriteweb.com/archives/are_you_replaceable.php <comment><USER2> Not in my own company.

<comment><USER3> Why not?

</comment></comment><comment><USER4> I sure hope so.</comment>


Report: Apple hacked in "sophisticated" attack - <AUTHOR> http://www.scmagazine.com/report-apple-hacked-in-sophisticated-attack/article/280950/

<comment><USER2> This reminds me of an interview with a bank robber (by a sociologist). He was talking about a job that they're done quite a few years back and how he was amused at the media reports afterwards. They all said that it was a highly organized gang who were clearly very professional bank thieves that had been planning the heist for months.

The reality was a group of guys who'd never robbed a bank before were sitting around in a pub and decided to rob the nearest bank on a whim.

It's in everyone's interests to make the attackers seem as sophisticated, skilled and scary as possible. The attacked party doesn't look at bad, their security teams don't look as bad and law enforcement doesn't look as bad. And the attackers feel smarter than they are.

TL;DR: you're never going to see a report saying "we were hacked by idiots because we did stupid things"</comment>


Offer HN: FREE: I'll make your first 10 cold calls - <AUTHOR> s/customers/users/; # where applicable
Are you a developer with a MVP / prototype that you're still refining to make it more perfect before you show it to your prospective customers?
5-6 months ago when I started testing my startup MVP, I've had to do something I've never done: make a lot of cold-emails and cold-calls. As a techie, I know that uneasy feeling when you're about to pick up the phone to dial someone. We all know if you wait until you're NOT embarrassed to show your target market for feedback, you've waited too long to get feedback.
So here's my no-strings-attached offer: If you have a barebones prototype / MVP, I'll use that to test your target market for you. I'll talk to at least 5 people, max 10, for free.
If you haven't yet made contact with a single person in your target market, simply testing it with as little as 5-10 people will at least uncover the top 3 major objections that you might want to think of addressing. All the things Customer Development & Lean Startup champions for early stage startups when you're still finding a business model.
That's it. I'll make the cold call, and you'll get valuable early feedback. With luck, we might get a small taste of what a repeatable sales process would look like - can't scale up getting customers without a repeatable process.
s/sales/user acquisition/; # where applicable
Another way to think of this offer, pretend you've got to a point where you've gotten funding and have money to hire a sales guy. Do you know what to do when you actually have a sales person reporting to you? What would the sales guy be doing on his first day? I'm that very early 1st sales guy (where I'm also helping you figure out the sales process).
This can be a very time consuming activity, if you've done any of these initial interviews, you know they can be as short as someone hanging up on you, or as long as a few hours.
Minimum criteria:
* At least an MVP that you're embarrassed of to test with. Could be a landing page.
* At least have a hypothesis of what the customer's problem/pain is
* Give me a list of 5-10 people's contact info to call up or email (usually sales people focus on converting leads into sales, but someone still has to send them the leads to hit up in the first place)
* Specific for this offer, I can't do B2B and/or long sales-cycle stuff where you have to navigate the corporate org chart (time constraint). Maybe in future. My goal is to help as many very very early stage startups as possible.
If you're pouring your blood and sweat by coding day and night ... you owe it to yourself to at least say "I know people are going to love what I'm building, but let me just check-in with real live customers real quick"
Hit me up and let's talk to see if I can help! I would love the opportunity to cust-dev for you.
jay liew at jay liew d()t c()m <comment><USER2> I'll take you up on it. I posted my MVP here a week ago for review. URL is <http://cilantrosites.com> (<http://news.ycombinator.com/item?id=2927607>)

You can call/email/visit any indie (ie not Applebees) restaurant or cafe. Work your hometown or I have spreadsheets of leads in a few cities.

Email in profile if you have questions.

</comment><comment><USER3> Thanks Jay for your contributions to the HN community. I sent you an email. I would love to talk further about it. Thanks

</comment><comment><AUTHOR> Forgot to add:

What I get out of this: I get to cust-dev & hustle for you - that is my prize. If you want to pay me, I won't say no to money :)

That's it. I'm not looking for a job. Or new ideas. Everything is private & confidential. I stake my real life reputation on it.

<comment><USER4> Jay's been volunteering with the Hacker Dojo for a while. He is honest and dependable. We trust him so much that he has access to all the stuff the treasurer does: bank accounts, admin controls, the works. You can trust him at his word.

<comment><AUTHOR> Thanks Ms. Hacker Dojo Director :)

</comment></comment></comment><comment><USER5> For how long your offer is valid? I'd like to give it a hit in about a month or two. And, can you hint on the area you are comfortable making calls in, i.e. whole country or a state. Thanks!

<comment><AUTHOR> Currently a bit overwhelmed, but not as overwhelmed as I thought I would be. Hit me up in a month or two, I'd be happy to help if my work load permits then. I'll call anybody with my cell that doesn't cost me any more than what I'm already paying for my bill ... so my reach is anyone in the US. Prefer calling cell over land lines (since my cell plan cost me more when calling land lines). I'd be happy to make international calls via your Skype account.

</comment></comment><comment><USER6> Out of sheer curiosity, are there any companies that actually do this (abstracted cold-calling) and take a commission on converted leads?

<comment><USER7> <http://launchleads.com/blogs/launch-leads> Out of Utah, doing incredibly well.

<comment><USER7> I would add to this, that out-bound appointment setting (cold calling to decision makers, NOT gate keepers) or having clients understand the "value" of your proposition (appointment setting, the above company) is a highly valued, and difficult skill to master.

</comment></comment></comment><comment><USER8> Very helpful, but unfortunately I won't need cold calls for a while. Do you have any good materials I could read in my spare time?

<comment><AUTHOR> Honestly, I'm just applying stuff as preached by Customer Development & Lean Startup. I highly recommend those. Ash Maurya's Running Lean has some good conversation "templates" too. What I bring to the table here is not anything new that nobody has already talked about. What I bring here is the actual physical act of picking up the phone and applying those methods.

In a nutshell, I call someone up in the target market, within that first 15 seconds give them a reason why they shouldn't hang up on you, then get the actual conversation started to see if they have the problem, and if they're interested in a solution .. giving them the opportunity to object (you won't learn what the objections are if you keep trying to convince them otherwise).. and you'll either make a sale, or learn something new that you should think about addressing in the solution, or just in the way you pitch the next person. I'm not really doing any justice here, CD and LS covered this extensively!

<comment><AUTHOR> In my haste, forgot to mention other key resources in my "toolkit":

* Entrepreneur's Guide to Customer Development <http://custdev.com> (cheat sheet to Steve Blank's book)

* Highly recommend Lean Startup Machine to get hands on practice with the guidance of lean startup mentors! <http://theleanstartupmachine.com>

</comment></comment></comment><comment><USER9> Go Jay go!

<comment><AUTHOR> Thanks Tristan! Let me know if you know of anyone who could use from free cold calls :D

</comment></comment><comment><USER10> Awesome Jay. Stoked to see this and let me know how it goes.

</comment><comment><USER11> Awesome Jay! How's it going?

</comment><comment><USER12> interesting offer - will definitely send you a message once we launch:)

<comment><USER4> You probably want to have Jay help you vet your idea before you pour enough into it to launch it.</comment></comment>


Epic seeks restraining order against Apple's 'devastating' response to lawsuit - <AUTHOR> https://www.pcgamer.com/epic-seeks-restraining-order-against-apples-devastating-response-to-lawsuit/ <comment><AUTHOR> Apple sure has an odd way of showing they aren't anti-competitive.</comment>


Blame the Banks for All Those Boring Chain Stores Ruining Your City - <AUTHOR> http://www.bloomberg.com/news/articles/2016-09-22/blame-the-banks-for-all-those-boring-chain-stores-ruining-your-city <comment><USER2> This article seems to say more blame goes to the landlords who want higher rents, for longer terms and from tenants with perceived better credit/deeper pockets.

Makes sense though.

I am not defending banks at all, but it's interesting banks are criticized for lending to risky smaller businesses and now they are criticized for not lending to risky smaller businesses.</comment>