553 karma · joined September 28, 2016
https://en.wikipedia.org/wiki/The_Paradox_of_Choice
* I'm exaggerating a bit of course.
---
[1] I was listening to a podcast where trolley problems were brought up and the speaker was lamenting how clearly "unethical" and "irrational" your evolved intuition is given that most people will let the train hit 10 men working on the tracks than to divert it and kill 1 innocent. Trolley problems are intellectually interesting for various reasons but jumping to that conclusion is clearly absurd. Your intuitions are shaped by millions of years of genetic and social evolution to precisely be most rational for actual real-life problems. If you were actually standing at that switch you'd be thinking...
* do I actually trust my eyes in this situation? Are the workers on a parallel track and there's no actual problem here?
* if I pull the switch, will it derail the train and kill N+1 people instead of the 10.
* will the workers just notice the train in time and scurry off the track? Or will the train just stop? How good are brakes on a train anyway?
* how much time do judges and juries spend solving trolley problems?
... and while you were paralyzed thinking about these and a million other things, whatever was about to happen would happen and there would be no trolley problem.
You're doing something bad in this hypothetical scenario, but it's not violence. Maybe it's "accessory to violence" or "willful ignorance" or some other immoral or illegal thing that you should be jailed for, but it's not literally "violence". Blurring this distinction is dangerous; people will start using actual violence against figurative "violence" in a kind of aggressive "self-defense".
I think you're reading too much intent into 4 labels. From an American perspective, Japanese was the original--commercial, censored--"Asian" porn, "Chinese" is typically amateur uncensored, etc. I... won't elaborate further here, but there are stylistic differences that have nothing to do with race.
You yourself are hypocritically writing in a direct, laconic style while advising Felipe to politely tip toe around sensitivity issues. Why aren't you yourself trying to "empathize" with Felipe and whatever culture he's from?
To be clear, I obviously like direct communication. I'm just pointing out the hypocrisy of this comment chain.
It can work this way--e.g. nvidia exposes an 'ultra low latency mode' in their driver that caps prerendered frames to zero--but typically for smoother animation and higher average fps gpus will have a queue of several frames that they're working on, and this is irrespective of how many render targets you have in your swapchain. Danluu's breakdown above is actually correct for the typical case.
---
Thought I'd clarify how this works since there's lots of confusion in this thread. In the early days you would directly write pixels to memory and they'd be picked up by a RAMDAC and beamed out to the screen. So if you wanted to invert the color of the bottom right pixel it would take at most two frames or 33ms of latency if you were running at 60fps double buffered: first you set your pixel in the back buffer, wait up to 16.66ms to finish drawing the current front buffer, flip buffers, wait 16.65ms for the electron gun to make its way down to the bottom right corner, and then finally draw the inverted pixel.
With modern gpu's, the situation is very similar to sending commands to a networked computer somewhere far away. You have a bit of two-way negotiation at the beginning to allocate gpu memory, upload textures/geometry/shaders, etc., and then you have a mostly one-way stream of commands. The gpu driver can queue these commands to an arbitrary depth, regardless of your vsync settings, double/triple buffering, etc, and is actually free to work on things out of order. You have to explicitly mark dependencies and a 'present' call isn't intrinsically tied to when that buffer will actually end up displayed on screen. So there's no actual upper bound on latency here; even at 360hz if the gpu is perpetually 10 frames behind the cpu, each frame only takes 2.77ms to simulate and 2.77ms to render but the overall input lag could still be ~30ms. (In practice though, drivers will typically only render 2-3 frames ahead.)
Nikole Hanna-Jones--author of the egregiously historically inaccurate 1619 project and an "academic" with no PhD, no academic publications, no teaching experience--was offered a non-tenure 5-year contract at UNC. Then when UNC eventually buckled under woke pressure and offered the 5-year contract with tenure, Jones rejected UNC and accepted a tenured position at Howard instead.
Very comparable situation.
Super robust, proper pockets, good fit, triple stitched, enough flex to squat in, etc. Twice what I normally would pay for jeans but ended up being totally worth it. But you do have to get used to the heavy denim feel and they'll never be as breathable as disintegrate-in-two-years jeans.
By contrast a centrist always takes the middling, compromising position at the middle of that Overton window. It's centrists that contribute to ethical drift.
The futuristic dream: kids use fancy tech like AR goggles and haptic tech to manipulate shapes in a collaborative learning game and ultimately learn math in an intuitive way. Think of the best Jypiter notebook you've seen and then take that off the screen and into the real world. Then add an AI assistant that constantly guides you through common questions and make it so that the whole program is continually being refined to make it better and better for each successive generation of kids. Every lesson has tens of millions of dollars poured into it since it will be reused potentially billions of times.
The practical dream: okay we don't have money for any of that, but at least use the internet to break geographic constraints. Have actual math teachers teaching math to various classes around the country/world, have actual music teachers teaching music, immediately direct gifted kids to accelerated classes, have more flexibility with special needs kids (e.g. take classes in a different time zone so that their parents can help), offer a wide selection of second languages by connecting kids to foreign teachers, do virtual exchanges, etc.
The reality: most kids don't even have computers. Actually I was shocked to learn that many kids don't even have chairs and desks at home. This is in Canada by the way. My wife was teaching K-8 online classes to kids lying on their beds, propping up their mom's borrowed iphone on their bellies, trying to not fall asleep as the front camera streams a dimly-lit view of their chin.
So to summarize, we start with the same in-person learning, from the same teachers to the same class, remove all of the blackboards/manipulatives/etc., reduce the child's field of view to a 6" screen streaming a laggy 480p video with horrible sound, delete all friendships by enforcing quarantine both during and after school, and finally conclude that online learning doesn't work!
* it's just vastly more comfortable than any ordinary keyboard. I now consider any "ergonomic" keyboard without key wells to be a joke, including the cheaper Kinesis keyboards like the Freestyle.
* you can get a version with "linear" cherry mx red switches for gaming, which is what I did.
* no drivers, no autohotkey scripts, nothing.
* every key is easily remapped; press a key you want to remap, press the key you want it remapped to, repeat until done. Put that escape key on top of caps lock where it belongs.
* there's a crucial "keypad shift" function where you can make one of the keys a modifier that remaps all the other keys. The default functionality is to give you access to numpad and media keys while holding the kpshift key, but you can freely reprogram any of the keys to trigger macros, move hard-to-reach keys to a better position, etc. Basically doubles the available keys.
* as many profiles as you want. You can completely reconfigure the keyboard for each activity you do. The other day I wanted to play the original Diablo 1, which doesn't support changing shortcut keys, so it took me 2min to create a profile that moves the uncomfortable F5-F8 spell casting keys to the home row. Again, there's no alt tabbing or mucking around with GUI's or config files; you just remap keys on the fly while playing the game.
* other stuff like programmable macros, etc. I don't really use this personally.
---
edit: I realized I didn't really answer the original question. For software developers specifically I would say at the end of the day it comes down to comfort. The key wells, thumb clusters, and wrist pads ultimately keep your hands in a comfortable position. And the programmability features ultimately work in service of comfort as well: having modifiers like CTRL/ALT/SHIFT available on the big thumb keys makes emacs chords much less of a stretch. Having Super/Windows on a thumb key makes i3/sway window management very comfortable. And the kpshift feature I described above makes it so you can move lots of functionality to the home row instead of stretching for it somewhere else.