[00:07.050 --> 00:12.750] All right, and let's... Testing, one, two. [00:14.750 --> 00:15.250] Is it good? [00:19.280 --> 00:20.480] All right, I got the mirror on. [00:21.080 --> 00:22.440] Is it okay if I do a test right now? [00:22.940 --> 00:23.400] All right. [00:26.710 --> 00:27.290] Fair enough. [00:35.230 --> 00:35.890] At an angle? [00:36.030 --> 00:36.090] No. [00:38.270 --> 00:39.910] So it's definitely going to be low right now. [00:40.070 --> 00:40.510] I can just see. [00:42.030 --> 00:52.240] Well, you don't have to bring it higher, but you need to tilt it up if... Okay, and we're not on the... Hasn't connected. [00:52.620 --> 00:55.580] That was not the... That was the wrong camera, I think, because I saw the green. [00:56.780 --> 00:57.600] So... Unplugging. [00:57.880 --> 00:57.960] Yeah. [01:00.540 --> 01:01.420] Is this plugged in? [01:03.300 --> 01:03.920] The white one? [01:04.060 --> 01:04.380] The hub. [01:06.740 --> 01:07.060] Yes. [01:07.260 --> 01:07.360] Yes. [01:08.620 --> 01:09.760] Yeah, let's try it one more time. [01:19.890 --> 01:21.530] That's... I tried to pull your pie mouse. [01:21.650 --> 01:22.410] I don't know if it actually went. [01:24.850 --> 01:25.770] It's the old pie mouse. [01:26.830 --> 01:28.250] And we're still on the internal camera. [01:28.450 --> 01:28.650] Crap. [01:30.050 --> 01:30.990] That's the internal camera. [01:32.210 --> 01:33.910] Let me, uh... Does that take a long time? [01:34.970 --> 01:37.510] Let's go to... Just to test it. [01:40.270 --> 01:41.350] Oh, no, no, we're on it now. [01:41.690 --> 01:42.130] I think we're good. [01:42.530 --> 01:42.850] You're on it? [01:42.850 --> 01:42.870] Yeah. [01:43.630 --> 01:44.110] Is that it? [01:44.510 --> 01:44.830] Yeah. [01:44.830 --> 01:44.830] Yeah. [01:45.330 --> 01:46.270] I do this every day. [01:46.410 --> 01:47.330] It usually doesn't, uh... [01:47.330 --> 01:47.490] All right. [01:47.790 --> 01:48.050] You good? [01:49.070 --> 01:49.430] Uh... [01:49.430 --> 01:50.210] Just about... [01:54.610 --> 01:55.550] No, no, I think we're good. [01:59.120 --> 01:59.480] So... [01:59.900 --> 02:00.260] Sweet. [02:09.050 --> 02:09.490] All right. [02:09.570 --> 02:10.090] Good evening, everyone. [02:10.970 --> 02:14.810] I'm Carl Haken, and tonight I'm going to be talking about ergonomic human interface hacking. [02:16.850 --> 02:19.890] So I think the first question to ask is, who am I? [02:20.490 --> 02:21.390] And, uh... [02:21.390 --> 02:22.410] The answer is, uh... [02:22.410 --> 02:26.730] I'm a software developer, and I used to suffer from the symptoms of RSI. [02:27.050 --> 02:35.590] Now, that's repetitive strain injury, and it can be a mixture of things like weakness in the hands, or tingling sensation in the hands. [02:36.690 --> 02:38.230] Well, I'll go into more into that later. [02:38.910 --> 02:45.410] Uh, people commonly refer to it as carpal tunnel syndrome, but it's actually, uh, an array of different, uh, different issues. [02:46.490 --> 02:50.650] So the reason I'm here is because I built some, some cool, uh, ultra-ergonomic tech. [02:50.970 --> 02:54.110] And I'm going to hopefully demonstrate it a little bit later, and hopefully that goes well. [02:55.490 --> 03:01.210] And now I'm symptom-free from RSI, and that's really what, what I'd like to talk about. [03:01.210 --> 03:06.990] It's, uh, it's a, uh, more of a, a personal, a personal progress rather than, uh, a very scientific approach. [03:08.190 --> 03:10.350] So, how did I get over the symptoms of RSI? [03:11.990 --> 03:13.830] Well, this is, uh, this is my setup today. [03:14.610 --> 03:20.150] And, uh, hopefully you can see, I've, uh, uh, I've got a weird keyboard in my lap, and I'll, I'll have some close-ups of that in a second. [03:20.770 --> 03:28.510] And I've got a, uh, a camera, which is actually the one that's right up here now, uh, aimed at my head, and it's tracking my head movements, and I'm using that instead of a mouse. [03:30.630 --> 03:32.210] So, here's a close-up of the keyboard. [03:35.190 --> 03:36.410] Here's a close-up of the head mouse. [03:39.530 --> 03:42.490] And these are the pedals that I have under my desk, and I'll go into that in a bit. [03:46.440 --> 03:50.000] Now, first, I'm going to start by talking about repetitive strain injury. [03:50.080 --> 03:53.640] It'll be a primer to, to tell you about what it is and, and how it works. [03:54.300 --> 03:56.960] And then I'll be talking about ultra-ergonomic keyboards. [03:58.300 --> 04:01.580] Next, I'm going to talk about head-based cursor control, and I'm going to use the term head mouse a lot. [04:01.980 --> 04:04.620] So, that's what we've used internally in our, in our development. [04:05.560 --> 04:10.000] And then I'm going to do a demonstration that'll hopefully go well, and hopefully I'll have a little time for Q&A after that. [04:12.080 --> 04:13.360] So, the disclaimer section. [04:13.720 --> 04:14.920] I'm not a medical expert. [04:15.100 --> 04:16.500] This is all personal research. [04:17.120 --> 04:18.800] I probably couldn't even make it onto Wikipedia. [04:19.860 --> 04:26.600] Uh, if you're experiencing RSI, you should probably see a doctor, uh, first, and then maybe do some experimentation like I did. [04:29.800 --> 04:33.300] Uh, but, but that's probably the first approach you should take. [04:34.300 --> 04:36.060] Now, I've only tested this equipment on myself. [04:36.300 --> 04:38.220] A few friends have tried it just for a couple of minutes. [04:38.740 --> 04:40.260] But I don't know if it'll work for you. [04:40.340 --> 04:42.420] If you're having symptoms right now, maybe it'll work, maybe it won't. [04:42.480 --> 04:43.480] You're going to have to try and find out. [04:43.820 --> 04:45.080] Probably see a doctor first. [04:46.840 --> 04:49.240] So, talking about what RSI is. [04:49.860 --> 04:52.900] Well, it's a condition caused by highly repetitive activity. [04:53.100 --> 05:05.020] And if you think about, uh, the history of humanity, there was a very long period of time when you couldn't just sit down and move your fingers a few inches for 10 or 12 hours a day because you'd get eaten or you wouldn't be able to eat. [05:06.100 --> 05:12.440] And it's, it's a relatively modern situation where you're moving your body very little and very repetitive patterns. [05:12.440 --> 05:17.720] If you think even up to the 1960s and 70s using a typewriter, it was a very varied activity. [05:17.900 --> 05:19.700] You might, uh, have to change the paper. [05:19.900 --> 05:22.700] If, if you didn't have the return, then you'd have to do it by hand. [05:22.840 --> 05:31.040] And it's, it's only in a very recent period of time, probably more like the 80s and 90s, where you start seeing literature and studies on RSI. [05:31.040 --> 05:36.300] Because it's really the first time we started seeing it in, in great number, great amounts and having it diagnosed. [05:37.400 --> 05:40.760] So, something to, to keep in mind is it's highly variable between individuals. [05:41.400 --> 05:50.620] Now, you might have colleagues or friends that, uh, that use their computer or, or do other repetitive tasks, uh, just as often as you do. [05:50.760 --> 05:53.460] And maybe you don't have symptoms than they do or maybe the opposite. [05:53.680 --> 06:02.180] It, it really, uh, it, it, it's, it's a complex, uh, it's a complex, uh, type of, type of injury. [06:02.360 --> 06:05.280] And, and you, you don't, you don't necessarily see it the same among all individuals. [06:06.740 --> 06:12.660] And another thing to keep in mind, and I've, I've read books and, and, and testimonials, is that it's frequently treated with suspicion by employers. [06:12.800 --> 06:17.100] And I can, I can actually verify this from my, my own, uh, experiences as well. [06:17.360 --> 06:19.800] Uh, it kind of just seems like you don't want to work. [06:20.080 --> 06:20.400] Right? [06:20.500 --> 06:25.880] You, you've done the same job for six months or a year and suddenly you say, I can't, I need to take time off or I, I need to rest my arms. [06:25.880 --> 06:31.140] I can, I can, uh, maybe verbally give you some documentation, but I can't write code for the next 12 hours. [06:31.720 --> 06:39.440] And, uh, and usually whoever's at the other end of that, um, you know, they just want the work done and, and they're not really thinking about it in that way. [06:39.720 --> 06:46.560] And given the variable nature between individuals, maybe the other people on your team or, or whoever, however you work, aren't having those issues. [06:46.720 --> 06:47.860] So it's, it's hard to understand. [06:50.180 --> 06:51.920] So there's also difficulties in treatment. [06:52.620 --> 06:59.880] It's, it's difficult to localize and, um, looking at what's actually going on, it's issues with your nerves most of the time. [07:00.160 --> 07:04.120] And I like to use the analogy of a clamped garden hose or crimped garden hose. [07:04.280 --> 07:06.180] It doesn't really matter where it's crimped. [07:06.640 --> 07:10.360] You're, you're, you're seeing the, the action at the end of the hose. [07:10.620 --> 07:17.700] So if you have a nerve running from your, from your, your, your spine or from your brain all the way to into your hand, you may experience tingling in your hand. [07:18.060 --> 07:19.840] It could be coming from your hand. [07:19.840 --> 07:20.980] It could be coming from your wrist. [07:21.040 --> 07:22.200] It could be coming from your elbow. [07:22.440 --> 07:23.620] It could be coming from your shoulder. [07:24.680 --> 07:27.060] And people have difficulty trying to figure this out for themselves. [07:27.240 --> 07:28.260] Doctors have trouble too. [07:28.400 --> 07:32.840] And you read testimonials where people have gotten carpal tunnel syndrome, as their doctor said they should. [07:33.440 --> 07:35.320] And it didn't cause the pro-, it doesn't fix the problem. [07:35.600 --> 07:43.580] In fact, in one case, it turned out to be a condition called thoracic outlet syndrome, where in fact, the nerve was getting compressed in their shoulder against their rib. [07:44.240 --> 07:50.020] So it's, it's a, it's a complex, complex and, and often misdiagnosed condition. [07:51.300 --> 07:58.780] And to talk about more of what's going on, if you think about your arms, your hands, you've got a mixture of systems. [07:58.960 --> 08:04.740] You've got your skeletal system, your bones, and you've got muscles and connective tissue, like ligaments and tendons. [08:04.740 --> 08:11.360] And it turns out that those systems are really good to adapting to repetitive tasks. [08:11.880 --> 08:14.340] They might build up scar tissue, they might swell a bit. [08:15.760 --> 08:18.700] Unfortunately, that's done without any consideration to your nervous system. [08:18.860 --> 08:26.220] And, and what often happens is the nerves will travel through tunnels in the joints, carpal tunnel, cubic tunnel in your elbow. [08:26.700 --> 08:30.940] And if they're swelling from your, from your, those other systems, it can compress the nerves. [08:31.080 --> 08:34.960] And that's usually what, what the symptoms of RSI are attributed to. [08:36.660 --> 08:39.780] And here's the graphic of the arms, excuse me, the nerves of the arm. [08:39.880 --> 08:42.040] And you can see that they're going right through the wrist. [08:43.360 --> 08:49.120] In my case, one of the things that I was experiencing was numbness in my pinky and in my ring finger, but not in the rest of my head. [08:49.160 --> 08:53.420] And you can see that the ulnar nerve travels directly to those two fingers and not to the other one. [08:53.420 --> 08:55.620] And so that was probably the source of my problem. [08:58.220 --> 09:00.320] So now I'd like to talk about ergonomic keyboards. [09:00.460 --> 09:02.860] And this is another graphic of, of my keyboard. [09:03.440 --> 09:09.260] And I'll be talking about the, what I developed and, and what the features are and, and, and how they are beneficial. [09:11.480 --> 09:16.080] So in talking about ergonomic keyboards, this is probably the most common thing you'll see. [09:16.180 --> 09:18.140] It's a Microsoft natural keyboard. [09:18.360 --> 09:19.620] It's got the split design. [09:20.540 --> 09:27.840] And really what they're trying to achieve with that split is to allow your elbows to be out a bit, but still have your wrist be relatively straight. [09:28.780 --> 09:36.640] And when the wrist isn't straight, they refer to that as a lateral deviation or ulnar deviation when it points out, outwards, away from the, from the body. [09:38.080 --> 09:47.440] And, uh, based on what I said before, with the, with the nerves traveling through these tunnels, if you've, if you've now twisted a joint, you've, you've made the situation that much harder for the nerve to be unobstructed. [09:50.000 --> 09:52.580] And here's a graphic of, of that deviation specifically. [09:53.880 --> 10:01.820] And there's a number of different manufacturers that all make keyboards that deal with this, uh, with, with some type of split and some type of, um, outward, outward twist. [10:03.940 --> 10:09.040] So the thing that's often not addressed is the twist of the, of the, of the wrist. [10:10.000 --> 10:13.860] And twisted downwards, as you would be on a normal keyboard, is called pronation. [10:14.280 --> 10:15.820] Uh, twisted upwards is called supination. [10:17.040 --> 10:23.380] And this is, this is another thing that causes people trouble, but it's, it's generally not addressed in most designs of keyboards. [10:24.480 --> 10:29.120] Now, when I started experiencing issues, the keyboard that I bought was the comfort keyboard. [10:29.860 --> 10:32.820] And it's probably the most adjustable keyboard out there. [10:33.340 --> 10:38.100] It's got these, uh, these wheels that you twist and, and, um, ball joints. [10:38.260 --> 10:40.060] And you can set it to essentially any angle you want. [10:40.200 --> 10:42.840] And the angle I'm showing here is what worked best for me. [10:43.180 --> 10:44.140] It's almost vertical. [10:45.240 --> 10:49.240] And when you think about it, if you just drop your arms, and you can do that along with me if you want. [10:49.240 --> 10:52.700] Uh, and then you lift them up to 90 degrees where you typically have a keyboard. [10:53.000 --> 10:56.460] If you look down, you're probably not twisted flat, completely pronated. [10:56.600 --> 10:57.880] You're in more of a handshake position. [10:58.060 --> 11:05.540] And, um, this is believed to be, uh, at least by the manufacturer and me, a more ergonomic position to be in. [11:07.400 --> 11:10.080] But there's, there's still other aspects of ergonomics. [11:11.080 --> 11:12.860] And, does anyone recognize this keyboard? [11:14.480 --> 11:15.060] All right. [11:15.540 --> 11:20.600] This is the Model M and it's, it's, it's the, it's the classic IBM keyboard. [11:21.940 --> 11:25.100] And it's actually, it's, in a certain way, it's actually very ergonomic. [11:25.340 --> 11:31.180] They designed it to have a pretty heavy key feel and to have a noticeable click when, when the key goes all the way down because of the buckling spring. [11:32.060 --> 11:34.880] And it actually turns out that this has an ergonomic advantage. [11:35.180 --> 11:41.400] And it's been studied that if you, if you don't have tactile feedback when the key is fully depressed, people push a lot harder than they have to. [11:41.740 --> 11:45.660] You end up having a lot of strain in, in the, in the muscles because of that. [11:45.760 --> 11:46.640] And that can affect the nerves. [11:47.080 --> 11:57.400] So with this, you have both, um, you have both tactile feedback in the sense that when the key reaches a certain point, unlike most springs, that the farther you push it, the harder it gets to push, Hook's Law. [11:58.260 --> 12:02.200] You actually have a decrease in pressure and the key falls under your, under your finger. [12:02.320 --> 12:05.740] And then you can lift it back up and you, you don't apply any more pressure because you know you've depressed the key. [12:06.260 --> 12:12.260] In addition, it also has the, the clicky sound, which, um, uh, I, I personally like a lot. [12:12.460 --> 12:16.620] Uh, but if you go into a modern office and you bring one in, you can really annoy people. [12:19.610 --> 12:29.350] So another ergonomic feature, and this is actually, this layout is from, uh, Kinesis Advantage, is to move more functionality, and I hope you can see this okay, move more functionality to the thumbs. [12:29.810 --> 12:33.810] Typically, your pinky, uh, on your right hand is, is, is doing the enter key. [12:33.950 --> 12:37.590] If you use Linux, uh, you may be using the tilde fairly frequently, and that's your left pinky. [12:38.210 --> 12:40.230] Um, tab is on your left pinky. [12:40.470 --> 12:43.030] Sometimes people remap, uh, caps lock to do their functionality. [12:43.250 --> 12:46.830] And it turns out that this finger is not particularly strong and doesn't have a particularly good range of motion. [12:47.130 --> 12:50.250] And people start to experience problems with their pinkies hitting escape on VI. [12:50.430 --> 12:53.210] I think I put that in my, my, uh, description of the talk. [12:53.630 --> 13:02.710] Um, and the Kinesis, one, one of the innovations of the Kinesis was to put, uh, many functionalities, like enter, uh, space, backspace, delete, all under your thumbs. [13:03.250 --> 13:07.670] And in my keyboard, I've actually also mapped escape, because I use it a lot when I use VI. [13:10.790 --> 13:16.050] Now, it was difficult to demonstrate modal operation, but, uh, it's something that I used and I wanted to talk about. [13:16.250 --> 13:21.390] And if you look at the rightmost pedal, that's actually connected to my keyboard. [13:21.970 --> 13:24.430] And when I depress it, I get a whole second set of functionalities. [13:25.550 --> 13:29.530] So typically, if someone wants to copy on their keyboard, they hold down control and hit C. [13:30.170 --> 13:33.330] Um, with mine, I just hold down the pedal and, and I actually have it mapped to Y. [13:33.690 --> 13:39.250] But essentially, you can significantly decrease the number of keystrokes that you have to, you have to do. [13:39.410 --> 13:43.510] I have my, uh, my cursor keys mapped to the home row, just like on VI. [13:44.010 --> 13:51.210] And all I have to do is depress, depress that pedal, and I get easy to use, uh, terse, terse commands to, to do the same. [13:51.210 --> 13:54.430] Thing that would generally take multiple, multiple key presses. [13:56.370 --> 13:58.030] So this is the Kinesis Advantage. [13:58.150 --> 13:59.830] That's the keyboard that that pedal plugs into. [14:00.390 --> 14:02.350] And really, this was almost perfect. [14:02.670 --> 14:05.850] It's got clicky keys, so that you don't apply too much pressure. [14:05.950 --> 14:07.670] It's got a tactile and audible feedback. [14:08.110 --> 14:11.750] It's the only keyboard with those, those, uh, additional keys mapped to the thumbs. [14:12.750 --> 14:16.950] Um, it's actually, it's got some other innovations like scooped keys. [14:16.950 --> 14:20.930] So, uh, your, your hands aren't traversing a flat plane. [14:21.110 --> 14:21.910] It's actually curved. [14:22.050 --> 14:29.290] So that as, as the curvature of your hand, um, causes your fingers to, to kind of go up and, and, and out. [14:29.310 --> 14:30.410] It actually matches that. [14:31.910 --> 14:36.710] Uh, but the main thing that it lacks is, is the attention to that twist. [14:36.710 --> 14:40.210] To the pronation and the suppation, suppination. [14:42.690 --> 14:48.870] So to sum it up, the, the, uh, characteristics that in, in my mind make a very ergonomic keyboard. [14:49.490 --> 14:52.110] Our split design, so that you can keep the wrist straight. [14:52.830 --> 14:55.890] A neutral twist, so there's no pronation or suppination. [14:56.990 --> 14:59.650] Um, some type of macros or, or modal behavior. [15:00.330 --> 15:02.050] A layout that utilizes the thumbs. [15:03.190 --> 15:06.210] And key press feedback, either with tactile or audible feedback. [15:07.770 --> 15:09.710] So as far as I'm concerned, this is the best so far. [15:11.930 --> 15:16.390] And now I'm going to move on and start talking about head-based cursor control. [15:18.650 --> 15:27.070] So, uh, when I got a really ergonomic keyboard, I started finding that no longer did both of my hands experience, uh, pain and numbness and weakness. [15:27.110 --> 15:29.870] It was just the one hand, and it was the one that was operating my mouse. [15:30.710 --> 15:35.010] I tried a track ball, I tried a, an apple magic track pad. [15:35.490 --> 15:37.070] Uh, but I really didn't have relief. [15:37.270 --> 15:41.110] And it was really the motion going back and forth between the keyboard and the mouse. [15:45.040 --> 15:48.680] So, when I tell people that I use a head mouse, they ask a series of questions. [15:48.940 --> 15:53.120] And I figured I'd go over them now, because it's, it's usually the first, first things people ask. [15:53.440 --> 15:54.220] Is it usable? [15:54.400 --> 15:58.020] And the answer is yes, I've been using it for, uh, almost two years now. [15:58.020 --> 16:02.180] And it's, it's, uh, exclusively at work, and it works, it works pretty well. [16:03.480 --> 16:06.240] And the next thing people often say is it must really mess up your neck. [16:06.400 --> 16:10.420] And suddenly you've moved this motion from your arm, uh, to, to movements of your head. [16:10.540 --> 16:11.840] And, and, and that's through your neck. [16:12.320 --> 16:18.040] Um, and it's unscientific, but I like to use the analogy of, uh, watching a tennis game with really good seats. [16:18.340 --> 16:20.340] You're kind of constantly moving your head back and forth. [16:20.400 --> 16:23.360] And I've never heard of anybody having injuries from watching a tennis game. [16:23.860 --> 16:26.260] Uh, you also think about kind of human evolution. [16:26.920 --> 16:31.660] We have to move our heads around a lot to see what's going on, to, to be safe, to, to be proactive. [16:31.880 --> 16:39.420] And, um, it's probably not, you know, these systems are designed to have, have a pretty, uh, high workload. [16:40.800 --> 16:46.740] So, kind of the, the, the, when, so you see this in operation, you might think that the cursor just goes wherever you look. [16:47.200 --> 16:48.580] And that's absolute positioning. [16:48.760 --> 16:49.860] It actually doesn't work like that. [16:49.960 --> 16:50.980] It's a relative position. [16:51.280 --> 16:53.780] So you're kind of moving your head a bit to the left and the cursor moves to the left. [16:53.780 --> 16:55.160] You have to move your head to the right, the cursor moves to the right. [16:55.240 --> 16:58.680] But it's not an absolute position where you just look at a spot and it just goes to that, that place. [17:00.480 --> 17:01.340] So how does it work? [17:03.100 --> 17:08.960] Well, the software that I, I co-wrote with a phenomenal developer, uh, Christopher Casebeer, uh, works in two modes. [17:09.420 --> 17:16.700] In one mode, it uses a camera with, uh, an infrared, um, infrared emitter that, uh, reflects off of glasses. [17:16.700 --> 17:17.660] You can see out on the left. [17:17.880 --> 17:20.240] And those two green spots have been annotated in the software. [17:20.620 --> 17:22.360] Those are the brightest spots in the camera. [17:22.660 --> 17:25.460] And it guesses where the center of your head is based on those. [17:25.520 --> 17:27.960] And you can see there's a white dot right in the middle of the bridge of the glasses. [17:27.960 --> 17:32.100] And that's, that's where the computer believes, uh, my head is pointed. [17:33.260 --> 17:36.120] The other mode doesn't use any special hardware at all. [17:36.180 --> 17:39.700] You can use it on any, any computer that has a webcam. [17:40.480 --> 17:41.660] Uh, and that's a great advantage. [17:41.780 --> 17:43.820] The disadvantage is that it's not quite as accurate. [17:43.820 --> 17:51.480] So it's something to try it out with, but ultimately it's going to be hard to get daily work done and do pixel perfect clicks, uh, with, with this method. [17:54.680 --> 17:55.760] So head mouse facts. [17:56.040 --> 17:57.060] It's great for jugglers. [17:57.220 --> 18:00.340] And, and I'm, I'm not talking about people that actually juggle, juggle balls. [18:00.480 --> 18:05.960] I'm talking about, um, people that switch their mouse, uh, day after day from their left to right hand. [18:06.080 --> 18:10.900] And, um, I, I, I was doing that and I've actually subsequently met other people that do that too. [18:11.000 --> 18:14.760] It's something that when you're really desperate and your hand feels really weak, you might try it. [18:14.760 --> 18:19.400] And, uh, eventually what happens if your situation is bad enough is that both hands just start to hurt all the time. [18:20.500 --> 18:23.020] And that's what happened to me and that's what led me to search for something better. [18:24.480 --> 18:26.540] So the next question is how long does it take to learn? [18:27.060 --> 18:32.140] Uh, for me, uh, it took about a month and a half to get proficient enough so that it wasn't slowing me down on the job. [18:33.900 --> 18:35.260] And then can you ease into it? [18:35.320 --> 18:36.460] Can you just do a little bit? [18:36.600 --> 18:37.800] That, that, that's actually how I started. [18:37.960 --> 18:42.060] I would say, okay, I'm going to do it for an hour in the morning or I'll do it until it's time to go to lunch. [18:42.060 --> 18:46.240] And I started eating lunch early and earlier because I didn't really want to, uh, have this impediment. [18:46.280 --> 18:47.300] Those can be even doing my work. [18:47.380 --> 18:49.240] And in fact, you can't really ease into it. [18:49.300 --> 18:55.760] You got to kind of just go, um, cold turkey on the mouse and, and then, and then the learning curve is actually, is actually pretty decent. [18:58.320 --> 19:03.320] So I'll talk for a couple of minutes on the technical details of what's in the software, um, that we wrote. [19:03.940 --> 19:10.620] Uh, we use Python and we use, uh, a library called OpenCV, which is an excellent, uh, open-source computer vision library. [19:11.780 --> 19:14.340] And we essentially structured our software as an event loop. [19:14.540 --> 19:16.680] And inside of it, it's got a signal chain. [19:17.740 --> 19:20.120] So the first thing that happens, the raw image comes in. [19:20.120 --> 19:33.260] Um, and we, the OpenCV does some of the heavy lifting so that, or most of the heavy lifting, uh, so that, in fact, we already have a point on, um, in an XY plane that we believe is where the person is looking. [19:34.240 --> 19:35.620] So we start by flipping the image. [19:35.740 --> 19:37.340] It's, it's, it's, it's a mirror image. [19:37.460 --> 19:38.640] And in fact, that's, that's what's intuitive. [19:38.740 --> 19:41.780] If you move your head to the right and the cursor moved to the left, that would be really weird. [19:42.580 --> 19:46.960] Um, and then the second thing we do is we take the XY diff at Delta. [19:47.440 --> 19:50.340] And that comes down to the fact that it's not an absolute position. [19:50.420 --> 19:51.360] It is a relative position. [19:51.500 --> 19:52.360] You move your head a bit to the left. [19:52.400 --> 19:53.600] The cursor moves a bit to the left. [19:53.700 --> 19:54.940] But it's not, it's not a one-to-one. [19:55.080 --> 20:00.640] It's not, you move your head 20 degrees and the, the cursor moves, you know, 100 pixels. [20:02.140 --> 20:03.040] We do smoothing. [20:03.120 --> 20:09.360] It turns out if you don't do some kind of smoothing algorithm that you end up with a cursor that's jumping around and it's impossible to click on anything. [20:09.580 --> 20:12.000] And you try to click and end up dragging stuff around in weird ways. [20:13.060 --> 20:15.140] Um, and we also have to apply acceleration. [20:15.140 --> 20:21.940] It turns out that if you don't have acceleration, you can either make big movements or small movements, but you can't really do both at the same time. [20:22.060 --> 20:32.600] You try to, uh, uh, tune it for moving small distances and suddenly you're jerking your head as far as you can and you're still, uh, you're only halfway across the screen and you can't select what you need to. [20:34.140 --> 20:40.400] There's this also this interesting, um, filter which is, uh, uh, sub pixel, sub pixel truncating. [20:40.720 --> 20:46.220] And this actually came out of a very interesting, uh, paper I read called, uh, mouse ballistics by Microsoft. [20:47.020 --> 21:01.240] And basically the, the way it works is if you move your mouse a bit, not enough to move a full pixel, but just a bit, um, on the next pass, it actually applies whatever the amount was that wasn't enough to move it to the next operation. [21:01.240 --> 21:06.560] And the idea is if you keep on making little motions, you can move all the way across the screen and you'd never actually move a full pixel. [21:06.740 --> 21:10.120] So it's kind of, it's taking that information and it's putting onto the next pass. [21:11.600 --> 21:15.720] And then another thing that is unique to our software is a distance, distance metric. [21:16.640 --> 21:27.040] Uh, as, when, when I'm at a, you know, distance of two feet from my, from my head mouse and I move my head a bit, I, I get a range of motion that's whatever I, I set to, it's, it's, um, expected. [21:27.040 --> 21:34.600] If I move my head in closer, what actually happens is that the image, uh, is bigger in the camera and will result in a bigger motion. [21:34.820 --> 21:40.460] In fact, when most people move their head closer, they actually, you know, they'll expect it to either move the same amount or move a smaller amount. [21:41.520 --> 21:47.860] So we, we maintain a constant, uh, a constant motion despite, regardless of the distance away you are from the camera. [21:50.750 --> 21:52.370] So there actually is a commercial option. [21:52.390 --> 21:53.810] And this is what I started on. [21:53.810 --> 21:59.410] And that's, uh, side by side, um, you can see it's a, it's a bit more polished than, than our solution. [22:01.850 --> 22:04.830] So the disadvantages that I experienced with the commercial solution. [22:05.230 --> 22:06.250] First of all, it's expensive. [22:06.330 --> 22:06.910] It's $400. [22:08.010 --> 22:09.850] And it's Windows only. [22:10.150 --> 22:14.410] If you want Mac support, a third-party makes the software, it's an additional $100. [22:15.550 --> 22:17.910] Uh, if you use Linux, you're out of luck. [22:18.410 --> 22:30.410] Uh, I thought about solutions like having a secondary Windows computer sitting next to my Linux machine, and, and using, um, uh, Synergy or some other type of software to, to make the commands from the Windows machine go to the Linux machine. [22:31.110 --> 22:32.930] And ultimately, I didn't want to do that for security reasons. [22:33.090 --> 22:34.570] I, there was a reason I didn't use Windows in the first place. [22:34.630 --> 22:37.550] And I didn't want all of my, uh, my movement data going through there. [22:38.930 --> 22:40.350] There were also reliability issues. [22:40.690 --> 22:43.370] Uh, mine burned out after, uh, a year and a half. [22:43.550 --> 22:46.170] So it was a half year out of warranty and the thing burned out and I was out $500. [22:47.390 --> 22:52.370] And then the last reason that using the commercial solution might not be desirable is it's closed source. [22:52.370 --> 22:54.710] And it's not well suited for tweaking or modification. [22:57.270 --> 22:59.430] Alright, so it might take me a couple seconds to set up. [22:59.590 --> 23:02.390] But now I'd like to attempt to do some demos. [23:03.050 --> 23:04.610] Um, and we'll see how that goes. [23:25.080 --> 23:26.860] And it just takes a couple seconds to start up. [23:54.340 --> 23:55.060] We try to plug. [23:55.440 --> 23:56.480] Oh, we're back on that one, okay. [24:05.770 --> 24:07.670] My laptop's gonna be a little faked out today. [24:07.750 --> 24:08.630] I'm picking the wrong camera. [24:08.710 --> 24:09.710] It's been picking the internal one. [24:43.360 --> 24:44.740] Alright, just a little bit stuck here. [24:51.300 --> 24:53.660] I knew there was a chance this would go horribly wrong, but... [24:54.240 --> 24:55.580] I hadn't really internalized it. [24:57.680 --> 24:58.940] Alright, let's try this again. [25:24.260 --> 25:29.640] Alright, it's not cooperating, so I'm actually gonna try to use the other mode, the eye tracking mode. [25:30.340 --> 25:32.560] Which is not as accurate, but should work. [26:01.040 --> 26:01.900] Okay, and we're going. [26:03.440 --> 26:11.400] So you can see we've got, um, the green inner square there is, uh, is where the software thinks my eye is. [26:12.300 --> 26:14.280] The red outer square is actually a chase cam. [26:14.400 --> 26:16.180] We're not processing all the pixels on the screen. [26:16.200 --> 26:21.260] We're just processing the ones that are close by to where it found my eye in the previous run. [26:21.840 --> 26:27.360] Now, if I cover it and release, it'll actually find my head and then find the eye again. [26:27.780 --> 26:31.600] And then again, it'll be tracking it pretty well. [26:32.620 --> 26:34.000] So you can see I can click on Windows. [26:37.620 --> 26:39.500] And, uh, and move my mouse around. [26:45.330 --> 26:46.690] And so that's more or less that. [26:47.030 --> 26:52.350] I, uh, was going to play Duck Hunt, but I don't think it's quite accurate enough on the eye version. [26:53.890 --> 26:54.830] So, okay, yeah. [26:55.390 --> 26:56.190] We can do that. [26:57.890 --> 26:59.510] So let's, uh... [27:13.410 --> 27:13.790] Okay. [27:30.010 --> 27:30.390] Nope. [27:49.120 --> 27:51.700] I do enjoy this, so you'll have to tell me when to stop if it gets more. [27:55.660 --> 27:56.880] How do you scroll with it? [27:57.300 --> 27:58.100] That's a good question. [27:58.100 --> 28:02.220] You need to enable the visual scroll bars in, like, the newer versions of S10 and you just have to grab them. [28:02.880 --> 28:05.460] Uh, it is, it is possible we could implement something, but we haven't yet. [28:06.780 --> 28:07.560] How do you click? [28:08.140 --> 28:09.400] I have, uh, foot pedals. [28:09.800 --> 28:15.700] Uh, when I, when I showed the graphic before, I had, uh, I had, um, uh, one that was for the keyboard. [28:15.840 --> 28:16.960] The other three are for the mouse. [28:17.220 --> 28:20.820] And I've got a left and right click and actually an unused one as well. [28:20.920 --> 28:24.360] So at some point I might, uh, map that to maybe a double click or something else. [28:24.480 --> 28:24.980] So medium. [28:25.120 --> 28:25.600] Medium score. [28:28.060 --> 28:28.560] All right. [28:28.760 --> 28:30.620] And now I'm going to do a quick demonstration of the keyboard. [28:31.060 --> 28:33.880] Um, this is it in person, same as the pictures. [28:34.260 --> 28:37.480] Uh, and it's, it's actually, believe it or not, usable. [28:37.700 --> 28:39.480] So I'm going to, uh, try. [28:41.200 --> 28:41.760] Let's see. [28:56.520 --> 29:01.340] And in general, I'll say that usually if even one person is looking over my shoulder, my accuracy goes down a bit. [29:01.340 --> 29:03.340] So, uh, I'll do my best here. [30:28.280 --> 30:28.720] Thank you. [30:28.800 --> 30:30.500] And full disclosure, that's about as well as I ever do. [30:30.780 --> 30:30.840] So. [30:32.740 --> 30:33.140] All right. [30:33.220 --> 30:38.880] So that's, uh, that's actually pretty much everything I've got. [30:38.880 --> 30:45.160] So, uh, now I'm, I'm happy to take questions from, uh, from anybody who is curious about, uh, the setup. [30:47.560 --> 30:53.100] And it's, it's quite difficult to see people actually with the... [30:53.100 --> 30:53.700] Oh, right here. [30:53.900 --> 30:54.240] Yeah, sure. [30:54.420 --> 30:54.640] Sorry. [30:54.640 --> 30:55.680] Where do you find the best [30:59.620 --> 30:59.940] in the room? [31:00.380 --> 31:06.900] Yeah, and, and, uh, in, in various literature, you'll see, uh, people will say that 90 degrees is best for the elbow position. [31:07.040 --> 31:10.140] Really, the keyboard position for me is based on how I want to have my elbows. [31:10.300 --> 31:11.760] And I think that was actually a bit arbitrary. [31:12.360 --> 31:16.640] Anything, uh, tighter, more acute than 90 degrees is going to be pretty uncomfortable and not very good. [31:16.680 --> 31:18.660] If you can get it a little bit less, I found that to be better. [31:18.980 --> 31:25.740] Um, but just for practical reasons, the, the, about the best you can do is, or I found is, is, you know, 90 or a little bit more obtuse than that. [31:26.580 --> 31:31.850] Uh, how long did David become proficient with that keyboard? [31:32.490 --> 31:36.030] And I think he just answered this, but how did he become as proficient as before? [31:38.150 --> 31:40.450] Yeah, I, uh, actually started, touched... [31:41.490 --> 31:42.770] Oh yeah, I, I apologize. [31:43.110 --> 31:46.210] So he asked, uh, how, how long does it take to get proficient with the keyboard? [31:46.370 --> 31:48.610] And, uh, am I as proficient now as I was before? [31:49.250 --> 31:52.490] Uh, I, I'd say I am about as proficient as I am before. [31:52.610 --> 31:54.670] Going to the vertical setup is actually incredibly easy. [31:54.750 --> 32:00.850] And I've had people just come to my desk and with that older keyboard, the comfort keyboard, which had the exact same layout, but just in a, in a vertical position. [32:01.170 --> 32:05.010] Uh, you can type almost as well as you can normally just right off the bat. [32:05.190 --> 32:07.970] And then after a few hours, you're, uh, you're fine. [32:08.270 --> 32:11.830] Uh, because of the Kinesis layout with, uh, the thumbs doing more of the work. [32:12.070 --> 32:15.830] Um, and I should say that my keyboard is actually, many of the parts are from a Kinesis. [32:16.410 --> 32:24.250] Um, you, you will, because one thumb is mapped to space and the other is mapped to backspace, you'll finish a word and you'll accidentally delete the last letter that you just typed. [32:24.250 --> 32:25.390] And it's incredibly frustrating. [32:26.050 --> 32:31.990] Uh, the other side of that, and I, and, and to answer the question, it took, I, I would say about a, a month to get, uh, back up to full speed. [32:32.550 --> 32:34.710] Um, it turns out it's a really tight feedback loop. [32:34.850 --> 32:42.430] And when you think about, um, uh, learning based on conditioning, it's incredibly frustrating when you perform an action and you don't get the result you want. [32:42.650 --> 32:48.570] So in that sense, it's, it's actually a pretty good system for learning, especially if you just cut off other options and, and just do that. [32:52.390 --> 32:53.210] Uh, two questions. [32:53.330 --> 32:54.330] What was the name of your software? [32:54.750 --> 32:57.430] Uh, the name of my software, uh, what was the name of the software? [32:57.610 --> 32:58.770] It's, it's, it's called Headmouse. [32:58.950 --> 32:59.430] It's on GitHub. [32:59.690 --> 33:03.710] It, uh, if you just search for my name in GitHub, it'll, it'll come up, but I'll actually have a link at, at the, at the end. [33:03.950 --> 33:04.150] Cool. [33:04.490 --> 33:14.890] Um, and then just talk, so I work at Trendle desk, um, and I'm basically unable to use a lot of objects from a monitor, and to keyboard, whatever, just after a half an hour of everything. [33:15.630 --> 33:22.190] And so, I'm fine with that, but I'm just wondering if you can comment a little on, like, more of the social implications of using some of this stuff. [33:23.330 --> 33:23.690] Okay, [33:26.730 --> 33:34.490] so, uh, this gentleman, given the fact that he uses a, a, a, a treadmill desk, and, and, you know, has some, uh, some social stigma or limitations based on that. [33:34.610 --> 33:35.630] Uh, how does it work with this? [33:36.010 --> 33:41.230] Um, well, I can say that, uh, jerking your head around, uh, can be pretty distracting to your coworkers. [33:41.690 --> 33:43.830] Uh, I had a guy who sat diagonally across from me. [33:43.890 --> 33:52.690] The guy who sat directly across from me had the monitor blocking him, but, uh, he'd always be looking at me, and, uh, uh, and it turns out that actually, pretty quickly, people get used to it. [33:53.050 --> 33:56.650] Um, they, they would often see the keyboard and say, wow, what's that? [33:56.770 --> 33:59.350] And they usually don't notice that there's no mouse and that my head is jerking around. [33:59.450 --> 34:04.030] And one, one guy once commented, uh, you know, I just thought that you were always really concentrated on whatever you were doing. [34:04.030 --> 34:06.970] But, in fact, I just had to keep my mouse positioned just so. [34:11.420 --> 34:14.460] Which pedals would you recommend for Linux machines? [34:14.600 --> 34:15.780] For Linux support? [34:16.240 --> 34:19.260] Well, for the pedals, that's, uh, so what pedals work well with Linux? [34:19.920 --> 34:23.560] Um, the pedals I use are the, uh, Kinesis brand pedals. [34:23.560 --> 34:27.940] And they work perfectly with Linux except for the fact you can't program them on Linux. [34:28.060 --> 34:36.720] So if you want to change the functionality, I wanted to remap the center key, the center pedal to, to, uh, to left click instead of middle click. [34:36.940 --> 34:41.160] And I had to find a Windows machine and install the software and program it that way. [34:41.260 --> 34:42.860] So once you get it programmed, it'll definitely work. [34:43.020 --> 34:49.920] On Linux, you may be able to use, um, some customization in Linux to just interpret a middle click as, as a left click or right click or some other action. [34:49.920 --> 34:55.580] Um, but in, in general, without the programming, it's, it just behaves exactly like a standard human interface device. [34:55.780 --> 34:57.360] And I have a follow up question. [34:57.600 --> 34:58.100] Do you have, [35:02.980 --> 35:06.460] uh, shift keys or alt keys to control? [35:07.040 --> 35:14.500] Uh, yeah, you actually, the, there's a, there's a three pedal version of the one pedal version that I have that plugs directly into Kinesis Advantage. [35:14.600 --> 35:17.800] So if you're willing to use the Kinesis keyboard, you, you can get that functionality. [35:18.220 --> 35:24.600] Um, on Linux, you, you may just be able to use the same pedals I'm using and just map them to, to the modifier. [35:25.320 --> 35:30.200] On OS 10, I think generally, uh, modifier keys from different keyboards don't apply to each other. [35:30.780 --> 35:34.300] So if you do shift on one keyboard, which is, in a sense, the pedals, they're emulating a keyboard. [35:34.460 --> 35:37.840] And another one on, on a different keyboard, it's, it may not work. [35:37.980 --> 35:39.660] So you may need some additional software to make it work. [35:45.920 --> 35:52.400] Uh, yeah, I, uh, the question is, uh, does the, the head tracker use an IR emitter? [35:52.400 --> 35:58.660] In the mode that I attempted to show, which works fine just about every day, it's just mainly because I'm up here that it completely flopped. [35:58.880 --> 36:02.620] Um, it uses, uh, it uses, uh, an array of IR emitters. [36:02.940 --> 36:14.200] And on my glasses, uh, are essentially the same kind of microbeads that you would see in a traffic sign or in, uh, safety gear for bicycling or for, for running where it has that. [36:14.200 --> 36:16.560] But it's actually, it turns out, it's a highly directional reflection. [36:17.000 --> 36:24.220] Uh, so, uh, when a car shines the headlights at you and you're running and you have that, that reflector on, it only shines back at the car, not at the other cars. [36:24.240 --> 36:25.080] And it's the same way with this. [36:25.220 --> 36:27.800] I, I, I get a very directional reflection back right into the camera. [36:28.600 --> 36:33.920] Uh, and, and, and it turns out the algorithm is incredibly simple because it's by far the brightest thing in the infrared spectrum. [36:34.240 --> 36:38.300] Uh, so all I have to do is essentially take, take the points that are bright and take a midpoint. [36:38.300 --> 36:39.480] And, and that's the whole algorithm. [36:40.180 --> 36:45.060] Uh, could you go into a order of what you did to modify the kinesis? [36:45.220 --> 36:46.760] Yeah, sure. [36:46.920 --> 36:50.120] So what did I do to modify the kinesis to, to look like it does here? [36:50.360 --> 36:52.860] Uh, and I'll just turn it around. [36:53.440 --> 36:57.780] Um, it, it was mainly, it's, it was just a, a, a, a physical, uh, construction. [36:58.000 --> 37:01.020] There's, there's really no changes to the, to the, uh, electronics. [37:01.640 --> 37:03.380] Um, it, it comes apart pretty easily. [37:03.480 --> 37:05.420] You just unscrew the, the outer casing. [37:05.700 --> 37:06.740] You pull the parts out. [37:06.740 --> 37:09.480] Um, some of the cables were too short, so I had to splice them. [37:10.180 --> 37:12.700] Uh, it uses a certain type of ribbon cable, which is kind of expensive. [37:12.900 --> 37:15.120] But you can get them on eBay for like 10 bucks a piece. [37:15.540 --> 37:18.520] Um, and then the physical construction of what's around it. [37:18.700 --> 37:22.460] Uh, it's, uh, it's metal and plastic that I, I just cut to shape. [37:22.600 --> 37:23.900] Uh, I used a lot of Instamorph. [37:24.100 --> 37:26.660] And, and if you looked at some of the pictures, it looked way prettier than it does now. [37:26.860 --> 37:28.680] I currently traveling for work. [37:28.820 --> 37:31.460] So I had to ruggedize it with, uh, this material called Instamorph. [37:31.900 --> 37:33.460] Uh, which is a moldable plastic. [37:33.460 --> 37:37.340] You can, uh, basically just heat it up to, to around 150 degrees. [37:37.520 --> 37:39.000] And then push to every shape you want. [37:39.180 --> 37:41.300] So a little bit, a little bit of just extending the wires. [37:41.460 --> 37:42.060] No rewiring. [37:42.420 --> 37:44.780] Um, the front face is laser cut. [37:45.000 --> 37:49.000] I just, it, it's, it's essentially like, uh, like the buttons you find on a remote control. [37:49.120 --> 37:50.460] It's those rubber membrane ones. [37:50.660 --> 37:52.540] So I needed an accurate face plate. [37:52.740 --> 37:54.160] So I just laser cut it. [38:03.070 --> 38:03.390] Yeah. [38:03.550 --> 38:04.910] Do I ever use ThinkPads with a TrackPoint? [38:05.030 --> 38:06.230] That's actually, that's my fallback. [38:06.390 --> 38:12.390] If I, if I have to use a computer, that's not, if, if, if I have the option and I'm using a computer that doesn't have the software installed, the TrackPoint's pretty good. [38:12.490 --> 38:16.390] I, I actually tend to get pain sort of, um, between my fingers when I use it a lot. [38:16.770 --> 38:19.510] But I'll say that it's far better than most of the other options. [38:19.630 --> 38:27.570] And if, if that works for you, but you have a desktop computer, they do sell, uh, keyboards that look just like the ThinkPad, but there's no ThinkPad. [38:27.570 --> 38:28.290] It's just the keyboard. [38:28.450 --> 38:30.810] It's got the, the, the, I had a TrackPoint. [38:31.010 --> 38:33.610] I was going to call it nipple, but there's, there's more professional term for it. [38:33.890 --> 38:37.790] Um, so yeah, so that, that's, that's a pretty decent option actually. [38:38.250 --> 38:43.530] And laptop keyboards in general, you're not moving your, your body very, or you're, you're, you're not putting strain on your, your elbows, your wrists. [38:43.690 --> 38:46.010] It's basically just a thumb motion if, if it's a TrackPad. [38:46.130 --> 38:47.130] And that's, that's not too bad either. [38:51.230 --> 38:52.950] Have you considered TrackBalls? [38:53.090 --> 38:54.210] Are you keen on using your thumb? [38:54.390 --> 38:57.650] Are you put that under the, under one in the center for either thumb? [38:57.810 --> 38:58.110] Yeah. [38:58.110 --> 39:08.430] So have I considered using TrackBalls based on the fact that, uh, you know, I, I, I advocating using thumbs as, as a way to, to decrease, uh, stress on other parts of, of the body. [39:08.790 --> 39:09.290] Uh, I did. [39:09.490 --> 39:12.550] And the main problem that I had is I wasn't using one that was built into the keyboard. [39:12.730 --> 39:16.390] So I was constantly moving my arm back and forth between the keyboard and the TrackBall. [39:16.470 --> 39:21.010] Had I, had I engineered it and put it in, inside of the keyboard, that, that could have been a very viable option. [39:26.430 --> 39:26.790] Yeah. [39:27.110 --> 39:33.410] I mean, it, it, it, it, it, the smaller marble ones would definitely fit within the, the physical size that I have on my current keyboard. [39:33.530 --> 39:35.490] So that, that, that, that could be a really viable option. [39:50.540 --> 39:51.050] Okay. [39:51.320 --> 39:53.070] So the question was regarding researching RSI. [39:53.240 --> 39:57.520] Did I find, did I find information on specific keyboards like Quartal or one-handed keyboards? [39:57.940 --> 39:59.550] Um, I didn't. [39:59.690 --> 40:01.320] I, I think it's actually a compelling option. [40:02.040 --> 40:06.230] Uh, the advantage of a system like this is you still maintain a somewhat standard layout. [40:06.230 --> 40:08.840] The keys, the letter keys are still in the standard position. [40:09.550 --> 40:18.110] Uh, the, the, the reviews I've read of the Quartal keyboards, the, the, the, uh, frog, leapfrog, frog pad, um, generally said that people had trouble learning to use it. [40:18.300 --> 40:20.380] And now whether that was just a level of commitment, I, I don't know. [40:24.660 --> 40:25.880] I, I have two keyboards. [40:26.060 --> 40:26.900] I don't use them now. [40:27.020 --> 40:27.940] I love the 90s. [40:28.100 --> 40:29.240] One is the Maltron. [40:29.600 --> 40:30.360] The Maltron. [40:30.580 --> 40:32.400] Another one is the, like, data hand. [40:36.690 --> 40:37.060] Yeah. [40:37.140 --> 40:39.960] So do I have any opinions on the Maltron keyboard or the data hand? [40:39.960 --> 40:42.940] I believe the Malt, the Maltron is the one with, like, the curved, uh, key surfaces. [40:43.460 --> 40:45.560] Um, and a different... [40:47.640 --> 40:55.040] Yeah, from what I've read, the, the Kinesis Corporation started by making cheaper, essentially a knockoff of, of the Maltron. [40:55.610 --> 41:00.840] So, the, the Maltron, I, I, I, if I remember correctly, was, was made for typing professionals who are doing it all day. [41:01.150 --> 41:04.420] And it was quite expensive as it was made, I think, by hand in the, in Great Britain. [41:05.070 --> 41:06.140] Um, no? [41:06.650 --> 41:06.900] Here? [41:07.190 --> 41:07.940] Oh, sorry. [41:08.100 --> 41:08.180] Okay. [41:08.180 --> 41:08.570] Yeah. [41:08.570 --> 41:09.360] I'm just asking you. [41:10.570 --> 41:11.560] Assuming you're the Maltron expert. [41:11.760 --> 41:12.020] Uh, yeah. [41:12.150 --> 41:13.420] So, I, they, they're quite expensive. [41:13.560 --> 41:16.540] I think they're, when you, when you bought it, was it, like, in the thousands of dollars? [41:16.810 --> 41:16.960] Or... [41:17.760 --> 41:18.190] Oh, 300. [41:19.680 --> 41:20.220] Used or new? [41:20.400 --> 41:20.600] Oh, 300. [41:22.300 --> 41:24.690] So, 97 dollars was before, like, George Bush. [41:25.680 --> 41:25.960] Yeah. [41:27.610 --> 41:27.900] Okay. [41:28.040 --> 41:28.190] So, yeah. [41:28.310 --> 41:31.360] So, I, if it's, if you can get them for that price, they may be a really good option. [41:31.360 --> 41:34.380] Uh, I, I, I, I'd, I'd, I'd understood them to be more expensive. [41:34.640 --> 41:37.610] But if, if you, if you've got a source for them, that might be a really good keyboard to get. [41:37.720 --> 41:40.420] The other thing is, a lot of people probably know the answers, but I don't. [41:40.650 --> 41:42.540] They are old PS2. [41:45.990 --> 41:48.210] Yeah, can you, can you modernize keyboards with PS2 interfaces? [41:48.470 --> 41:48.630] Definitely. [41:48.830 --> 41:52.230] They have, uh, they have PS2, PS2 to USB adapters, and, um... [41:53.430 --> 41:55.690] Yeah, especially, I found on Mac, they can be finicky. [41:55.830 --> 42:00.650] But if you just go online on, uh, and, and read the reviews, and find one that people, that's basically about it. [42:00.790 --> 42:03.110] I find one, I found one that people said worked on Mac, and it did. [42:03.330 --> 42:04.410] So, that's my process. [42:07.510 --> 42:08.090] What's it weigh? [42:08.950 --> 42:10.630] Uh, how much does it weigh? [42:10.710 --> 42:11.550] I actually don't know the answer. [42:11.650 --> 42:12.110] It's pretty heavy. [42:12.950 --> 42:15.070] Um, it's not uncomfortable to have on my lap all day. [42:15.230 --> 42:16.490] It's, it's kind of annoying to travel with. [42:16.570 --> 42:21.430] It's also incredibly bulky when you take a flat board and you, uh, you prop it up. [42:21.430 --> 42:22.570] It takes up a lot more room. [42:22.730 --> 42:23.750] There's a lot of empty space inside. [42:24.370 --> 42:26.690] So, in, in that way, it's actually not very practical. [42:28.390 --> 42:31.130] Have you looked into solutions for multi-touch gestures at all? [42:31.550 --> 42:33.590] Have I looked into solutions for multi-touch gestures? [42:33.770 --> 42:39.410] I, I, I used, I used them for a while on the, on just the, the Mac, on the, on the laptop. [42:39.710 --> 42:46.690] And, um, I find that the, the modal system with the keys is generally a lot faster, um, than, than, than the multi-finger gestures. [42:47.030 --> 42:50.090] But, uh, uh, and, and it allows me to keep my hands on my keyboard. [42:50.090 --> 42:53.570] Uh, but, but that, for, for some people, I, that, that may be a great option. [42:53.730 --> 42:58.790] And, and I have a coworker that has some kind of, like, floating, it senses your hands in the air and he seems to like that. [42:58.990 --> 43:00.250] So, that could be a good option as well. [43:01.530 --> 43:08.490] Uh, since you developed this system for your job, was there any supplement from your boss, or was it just all on you? [43:09.590 --> 43:09.910] Yeah. [43:10.070 --> 43:10.150] Okay. [43:10.250 --> 43:12.490] So the question is, uh, since I developed it for work, was there any supplement? [43:12.730 --> 43:14.210] Uh, no, there wasn't. [43:14.290 --> 43:15.370] It was a, it was a startup. [43:15.730 --> 43:22.430] Uh, I remember the first time my boss saw the first version of this keyboard, he just, he did like the, the cross because he just thought it was so weird. [43:22.830 --> 43:30.290] Um, but, uh, no, I, I didn't, and, um, I, I didn't really expect an employer to just because it was so experimental. [43:30.370 --> 43:38.550] If this was a proven solution that had, uh, research behind it and was, uh, proven to be medically sound, then I think that accommodation would be really reasonable. [43:38.930 --> 43:43.670] But because it was an experiment and I was Dremel tooling a lot of stuff, it, it didn't seem really appropriate. [43:43.870 --> 43:48.470] Well, it sounded like you had used, uh, previous, uh, manufactured solutions, right? [43:48.810 --> 43:50.290] Uh, did they pay for any of those? [43:50.430 --> 43:52.270] Uh, yeah, so I, it's true. [43:52.370 --> 43:54.270] Before I used that, I used manufactured solutions. [43:54.430 --> 43:55.050] Did they pay for those? [43:55.290 --> 43:56.170] Uh, no. [43:56.330 --> 44:01.490] I mean, at the time I bought the one I was working for a non-profit, uh, I, I probably should have asked, honestly. [44:01.490 --> 44:10.010] But I, I think, uh, I, I mean, I think in general with, with RSI, if you're suffering from it, the, kind of the less of a headache it can be for your employer, probably the better. [44:10.110 --> 44:11.710] Because at some point you're gonna have some pretty big asks. [44:11.870 --> 44:15.090] Like, I need to take a couple weeks off because my arms, arms just, you know, I can't type. [44:15.750 --> 44:21.410] And, uh, I, I think ultimately if you can, uh, give them a reason to say, okay, this person was, was no trouble at all. [44:21.510 --> 44:21.910] No problem. [44:22.030 --> 44:22.770] He's got this problem now. [44:22.870 --> 44:27.670] And I actually believe him or her because, uh, up until now they've been very accommodating. [44:27.670 --> 44:32.030] That's sort of the tack that I, I took and I'm not necessarily advocating it, but that's just sort of how I've done it. [44:35.370 --> 44:35.690] Okay. [44:36.070 --> 44:39.350] Uh, I'm, I'm not seeing any other questions to see all if, uh, oh, there's one back there. [44:47.840 --> 44:49.140] That's really, that's a really good question. [44:49.220 --> 44:51.080] Has the TSA flagged it as a bomb? [44:52.060 --> 44:57.840] And, uh, I, I've made it through security each time and, and previously I didn't travel, but now I'm traveling to work every week. [44:57.840 --> 45:05.040] And, uh, and I brought it back and forth a few times, the keyboard, the, the head mouse, which, which is just wrapped in, in electrical tape and has red and black wires. [45:05.240 --> 45:07.940] It looks like, uh, it's like right out of the movies. [45:08.520 --> 45:18.200] Um, the first time I flew, I went through JFK and, uh, the woman behind me who had a completely innocuous, just like Gucci handbag, they stopped her and they examined it. [45:18.240 --> 45:25.100] And I kind of think that maybe they saw my, the contents of my bag on the X-ray and then misidentified which bag it was in, but that's just my conspiracy theory. [45:25.100 --> 45:25.960] I don't actually know. [45:28.280 --> 45:28.880] Anybody else? [45:30.900 --> 45:31.220] Okay. [45:31.340 --> 45:32.220] Well, thank you very much. [45:32.320 --> 45:34.200] I'll, I'll be up here for a few minutes if you have any other questions. [45:40.550 --> 45:41.890] Let me just put up the, uh, [45:45.540 --> 45:52.560] all right, so here's, here's my email and my, uh, and the, the address for the, uh, the head mouse software, which is open-source. [45:54.060 --> 45:54.700] Yeah, definitely. [45:55.460 --> 45:58.120] We can, uh, let me, uh, let me position.