Hacker News new | past | comments | ask | show | jobs | submit login
Semaphore: A Full-Body Keyboard (github.com/everythingishacked)
1362 points by kieto on April 12, 2023 | hide | past | favorite | 209 comments



Author here! Pleasant surprise to find my project at the top of HN this morning with such positive feedback :) I'm happy to answer any questions or hear suggestions for future tweaks. Planning to make this into a customizable full-body game controller as well.


Can I just say how much I liked the small details here? Like your choice of matching sweatbands, your jazz hands on the last symbol, your choice of pose for backspace, and the commit message, "Updated readme for pedantry". In your honor, I am performing the chef's-kiss gesture. (Which I hope you will include as you add emoji to your input device.)


Thank you! Although TBF I only merged the pedantic README update :D


The jazz-hands sold it for me, too.


I hope the video was dramatized and that you didn't actually hurt yourself!

Rather than type every letter, a more efficient system is to represent sounds with keys. This is how stenography works. Each stoke of the keys is mapped to a series of characters; a letter, a grouping (such as 'sh' or 'ing'), or a complete phrase. Using such a system would allow one motion, for example for 'b', to map to a whole word, such as 'be'. Something as simple as that would reduce your risk of injury by something like 50%.

A major difference between stenography and typing is that steno is chorded: the signal is sent when the keys are released, not when they are depressed. I'm not sure how that would work with the full body.

Check out the OpenStenoProject for more about steno. Their community would probably enjoy discussing a full body steno theory (if they haven't already) .

Take care and thanks for all the effort that went into producing the video! It was a lot of fun :)


Completely unrelated, but your comment about stenography reminded me how our French president announced the COVID lockdown. It was a speech full of key information (some I could not hear because when he announced that the schools would close children erupted in yells) but that was not the best part.

The best part was that the speech was also signed for the deaf (that part was normal) and subtitled by a ..., well, ... stenography trainee.

He or she had all wrong, could not keep the speed, was mixing words and skipping whole parts. At some point they seem to have said to themselves "oh fuck it" and were typing more or less random words.

The whole country was with them, hoping that they will go on typing until the end (which they did). That was a memorable event and people actually learned about stenography and the fact that they apparently use a special keyboard in the form of a butterfly.


Interesting, I wonder if you could make a BodyChord or FaceChord setup using steno... Can you actually write code using a steno keyboard - as in, full access to all the usual symbols and modifiers - or would it just be for letters and basic punctuation?


Yes! Here is a really great talk on the state of doing so, with a fantastic realtime demo near the end. Mirabai live-codes using her Plover setup and narrates her thought process as she types out each command.

https://www.youtube.com/watch?v=Wpv-Qb-dB6g


Amazing! The spoken demo reminds me of Victor Borge's Phonetic Punctuation. This would be such a great way to spend so much time getting slightly more efficient...


I saw her at a keyboard meetup in NYC. She blew my mind with her vim setup: chords representing commands meant that the keystrokes didn't exactly matter: you could have the chord represent an arbitrarily annoying set of keystrokes and have a correspondingly complicated vimrc to handle them. Very cool!!


There are plenty of chorded keyboards that are programmable enough to allow use of whatever symbols you want or need when programming.

The Charachorder One is one example

https://www.charachorder.com/products/charachorder-one


Can't code with that.


I'm actually already working on exactly that -- after trying it out on a couple of mini-games such as https://github.com/mristin/pop-that-balloon-desktop, https://github.com/mristin/cactusss-desktop and https://github.com/mristin/ski-leu-desktop.

Please let me know if you want to join forces! You can find my contact information at: https://github.com/mristin.

I figured that I don't mind my kids playing computer games as long as they move. The first stage for me is to find a workable approach to DOS games. In particular, I thought about adapting ski-leu to race games such as Outrun & ilks.


Excellent, I'll reach out! Your balloon game looks a bit more like my face keyboard interface: https://github.com/everythingishacked/CheekyKeys#readme


For some idea sourcing, you guys could consider mapping to musical notes as well. Then each melody maps to a particular dance.


Hmm like a camera-based full-body theremin?


>> I figured that I don't mind my kids playing computer games as long as they move.

These could also be of interest for inspiration as well - basic idea this Youtuber is doing is to use console gamer joystick re-mapper hardware to convert joycon acceleration readings to button presses/button combos.

Can you Lose weight by playing Breath of the Wild? - Ringfit Controller Mod Explained Version

https://www.youtube.com/watch?v=HYn3pWXMPF8

- Today we talk about the Ringfit Adventure controller mod for Zelda: Breath of the Wild. With this mod you can Exercise and play BotW at the same time.

I made a Ring Fit Adventure Mod for Mario Kart - Controller Bending

https://www.youtube.com/watch?v=CNZSfunw85A

- Today on Controller Bending we mod the Ring fit controller to play Mario Kart 8 Deluxe with. With this Ring-con mod you have to run to drive. Literally. Squeezing the ring-con activates items!

I'd imagine a lot of similar mods could be done via computer vision instead of using joycon accel readings.

I think the key would be to show up to a gaming console as a PS4/XBox controller instead of just a keyboard. I think there are Python libraries to do this [1] or just stick to Steam games that just need WASD controls. This allows you to tap into already huge library of high quality games and just focus on the OpenCV movement-> joystick button remapping part.

[1] Something like this - although it might be Windows only https://pypi.org/project/vgamepad/


Cool ideas!

I implemented a couple of mini-games using a dance mat as well:

https://github.com/mristin/dance-a-mole-desktop

https://github.com/mristin/judo-dance-desktop/

https://github.com/mristin/dance-cat-to-mouse

https://github.com/mristin/burpee-frog-desktop

https://github.com/mristin/dance-runaway-desktop

Dance mat could be even easier to integrate as it acts just as a normal joystick. The problem, though, is that many games expect reaction times achievable with a keyboard & mouse, but leg movements are a bit slower.

The problem with the dance mat is that you can not use it in a school class as you need extra equipment. It worked well in a dojo for my judo classes, though.


Cool stuff!


Demo is very cool, how do I run these games on Unix? Looks like it's an exe file. Is there a way to build this myself.


I'll try to package it for Linux this morning. So far nobody asked for it.


Even instructions on which python files to run would also work for me :)


You can find the packages here:

https://github.com/mristin/ski-leu-desktop/releases/download...

https://github.com/mristin/pop-that-balloon-desktop/releases...

If you want to run the code manually, install it in the virtual environment. Then you can simply run commands `ski-leu` or `pop-that-balloon`.

Btw., I use pop-that-balloon for basketball dribbling training, and a friend uses it for boxing. Have fun & please let me know if you use it for yet another sport :).

Edit: removed bullet points


Your project (especially the video) made my life a little brighter. Thank you for putting it out there, and having a sense of humor :)


Your video is a work of art.

You could probably combine semaphore keyboard with some sort of stenography software for faster input (e.g. Plover https://youtu.be/KZGuBV1xe64)


I replied to a similar comment above, definitely worth an experiment!


I’ll keep this mind the next time I’m stuck on a burning rooftop and trying to communicate with the rescue chopper. I only hope the pilot understands Semaphore!


As a remote software developer, if this became a product that could be used daily I'd probably buy it. It would be the key link between programming and body exercise.


Yoga pose based programming?



YDD, Yoga Driven Development


>DDDD

>>Downward Dog Driven Development


My back agrees with you


Have you considered adding an autocomplete? Maybe add in three most likely completions to your word and have three separate signals to select each respectively? Maybe that's cheating, but that could up your words per minute drastically!


Enjoyed your video, but quick FYI: Your SSN is visible on the shot of your tax form. Might not want that detail to go viral.


I don’t think that is the authors SSN, since the first number closely matches a song title and the second is “69 420 007”, which is definitely a joke.


that youtube video was hilarious and very clever... you're about to become a overnight sensation mate :-D


I loved this! Should be customizable so that twerking also allows you to double letters :)


Have you found or implemented a "reader"?

Imagine teaching some ML your personal body movements, and then you could have it transcribe text into Semaphore-output video (or live rendering)... At least well enough that Semaphore-input could read it?


I started building a super simplified version of something like this to help me practice flag semaphore, but ended up learning the alphabet a lot faster than finishing that script :o)


Big Jack Stratton energy in your demo GIF.

Here’s hoping this ends up in a Vulf music video.


This is amazing! I think there is a lot of potential for education. This makes studying letters way more fun.


I wish this existed 20 years ago when I done my college capstone project. It would be great present this to the examination board


The video on your site, from the clothing to your expression, is absolute perfection!


Thank you for this! Watching this brought me quite a bit of joy.


Have you considered making a full body musical instrument?


Yes, hoping to do something along these lines for a future update! I'm not sure if it would be individual notes/chords per motion, or something based on samples and a looper. If anyone knows of related projects, I'd love to get some ideas for inspiration.


This is absolutely great! Thank you Sir!


how much did you love the nintendo powerglove back in the day?


I thought it was awesome. It occurred to me when you mentioned tinkering with magic values that it won't be very tweekable for other users like that.

Instead of MediaPipe try training a simple NN with a quickstart asking new players to assume the positions for fine tuning? :P


Thanks! Yeah, I definitely chose the easy way over the 'right' way for this version with just setting simple thresholds.

I'm not sure how well it will work yet, but for a game controller I might try to have users record their own custom motions - as in, "show me a few of your chosen [high punch] motions to match against in-game."


The YouTube video is even funnier: https://youtu.be/h376W93gQq4


"My glutes were burning from having had to file my taxes earlier."

Definitely a brand new sentence.


Surprising since tax season makes my glutal area hurt every time


As anyone that has ever been audited can attest, not really.


I can't believe he only has ~1.5k subscribers, he's absolutely hilarious! I highly recommend everyone to watch that video.


That blew me away, too. Most of his videos have under 1000 views. How is that possible?


I subscribed, the humor convinced with the execution here is what I could do with more of!


The part where he jumps to repeat a letter is both smart and funny to watch. Indeed, highly recommended watching the full video!


Serious Brad Neely's Harg Nallin' Sclopio Peepio vibes!

https://www.youtube.com/watch?v=6HJexftddVw

EDIT: I just realized that it's the same guy behind this gem, that I randomly ran across a few months back!

https://www.youtube.com/watch?v=5q-BQ2Q_pqI

(I Made a Remote Lie Detector to Test Zuckerberg's Pulse)


This guy needs to be famous. ~150 likes on this video. It should be a million!


Thanks! Today has certainly been a good jumpstart :)


The short shorts were not required, but appreciated


And the '80s style sweatbands, genius.


I wonder how long it took to learn the actions.

A dance revolution style tutorial would be fun


It only took me a couple days to learn all the signals and work out the modifiers, but about ten days of ~an hour a day after that of speeding things up. Maybe I'll make my own instructional 80s workout video for it...


I think you could turn this into a game - Dance Hero or something. With a ridiculous storyline where you have to send signals with the power of dance to save the world


I dig it, send signals to the aliens asking for a rescue with the only Fatline capacitator left in earth which happens to only take dance inputs


It practically writes itself!


Now we can add your own drawn characters to it too

https://github.com/facebookresearch/AnimatedDrawings


Also had ChatGPT develp the game idea/mechanics

Sure, here’s a possible game plan for the idea you proposed:

Gameplay: The player takes on the role of a survivor on a post-apocalyptic Earth, who has discovered the last remaining Fatline capacitator capable of sending signals to alien life forms. However, the capacitator can only be operated through dance inputs. The player must navigate through various levels, avoiding obstacles and enemies, while performing dance moves to activate the capacitator and send the rescue signal.

Strategy:

The game could have different difficulty levels, with more complex dance moves required for higher levels. The player could earn points for successfully executing dance moves, and lose points for mistakes or taking damage from enemies. The player could also collect power-ups along the way, which could improve their dance moves or provide temporary invincibility.

Plan:

1. Develop a basic game engine with the ability to detect and interpret dance inputs from the full body keyboard.

2. Create a post-apocalyptic world with different levels and obstacles/enemies.

3. Design a variety of dance moves that the player must execute to activate the capacitator.

4. Implement a scoring system that rewards successful dance moves and penalizes mistakes or damage taken.

5. Add power-ups and other collectibles to the game.

6. Test and refine the game mechanics to ensure a challenging and enjoyable gameplay experience.

Mechanics

The game mechanics for the game could include:

1. Movement: The player would use the full body keyboard to control the character’s movement through the game world. For example, the player could move forward by performing a specific dance move, or jump by executing another dance move.

2. Dance inputs: The player would need to perform various dance moves to activate the Fatline capacitator and send the rescue signal. The dance moves could become more complex as the game progresses, requiring the player to execute longer and more intricate sequences.

3. Obstacles and enemies: The game would feature obstacles such as pits, spikes, and other hazards that the player would need to avoid. Enemies such as robots or mutated creatures could also be present, which the player would need to defeat or evade.

4. Power-ups: The player could collect power-ups throughout the game, which would provide temporary boosts to their dance moves or other abilities. For example, a power-up could make the player temporarily invincible to enemy attacks.

5. Scoring: The game would keep track of the player’s score, which would increase as they successfully execute dance moves and defeat enemies. The score could be used to unlock new levels or other rewards. Overall, the game mechanics would revolve around using the full body keyboard to control the character’s movement and perform dance inputs, while avoiding obstacles and enemies and collecting power-ups to increase the player’s chances of success.


The way that the "hello world" in the youtube video is synced with music made me think that it would be awesome to make music this way, to translate the body movements to sound. A kind of reverse dancing — rather then dancing to the music, the music would be created to your dance.


This video is worth a watch just for the 1-second YMCA section. 2:43


LOL agreed, I absolutely loved that one joke


This video was a great way to start my day!


He didn't show his real SSN, right?


He mentions Semaphore signaling was invented by Claude Chappe and then proceeds to make fun of him for being French which I don't find acceptable.


I rewatched that part of the video and don't see where he made fun of him. Are you referring to when he mentions that Claude Chappe was "big-brained" and zooms in on his head? If so, that sounds like a compliment to me.


"Big brain" is definitely a compliment, I can support this use of terminology.


I accidentally a word


Don't surrender your emotions to jokes.


Every now and again I try and explain to non-coders why a software engineer might build something "just to see if I can" - and that a lot of the software they use probably started out as such. The video captures that so well!


I was lamenting the use of "semaphore" but wikipedia supports them:

> Semaphore (lit. 'apparatus for signalling'; from Ancient Greek σῆμα (sêma) 'mark, sign, token', and Greek -φόρος (-phóros) 'bearer, carrier')[1] is the use of an apparatus to create a visual signal transmitted over distance.

https://en.m.wikipedia.org/wiki/Semaphore

I was only familiar with:

> [A semaphore] is a variable or abstract data type used to control access to a common resource by multiple threads and avoid critical section problems in a concurrent system.

https://en.m.wikipedia.org/wiki/Semaphore_(programming)


Knowing about programming semaphores but not visual semaphores seems quite bizarre to me. A bit like thinking flag or register or stack were only computer terms.


I don't know if they're on HN yet, but there's a generation for which "writing to disk" has nothing to do with disks of anything.


Depends on when you want to define "nothing to do with disk" as. M.2 was introduced in 2013 which would make them 9 years old by now, but if we look at Samsung's 2006 PATA SSD (with 32GiB!), then they'd be 17 and could well be on here.


Yeah I suppose there's a lot of wiggle room there. Personally I associate disks with circles because:

> In geometry, a disk (also spelled disc) is the region in a plane bounded by a circle. (wikipedia)

So you wouldn't find those in an SSD, it would have to be a spinning disk sort of deal.


I use a standard disk icon to represent "saving" in a popular web app I run. I very often see users referring to it with "click the square thing to save".


The “save” button is generally still a floppy disk as well!


I figure it's quite common for non native speaker, no ?


Semaphore basically means "traffic light" in many languages.


Even as a native speaker, I had been using the programming concept for a few years before I discovered the signaling doohickey.


I only knew about non-computer semaphores from the Swallows and Amazons books (which are from the 1930s and 1940s). If my mom hadn't read those books to me as a child, I don't know that I'd have come across the concept.

"Token ring" is something I learned in networking, and the Wikipedia article doesn't mention railroads at all. I assume that's where the term comes from, but I only heard about railway signalling tokens decades later. (I think they may have appeared in the Thomas the Tank Engine stories on Shining Time Station, but I was quite young at the time.)


I am a native English speaker and never heard the word "semaphore" until taking CS classes in college. I cannot think of a common use for the term, unlike flag (see them all the time), register (do that with cars and schools) or stack (lots of those in my kitchen).


> register (do that with cars and schools)

I would think computer register comes from the noun, not the verb — think cash register, not to register a car.


I agree, I was just trying to think of how the word "register" comes up in casual conversation.

I cannot think of a way that "semaphore" would come up in non-nerd conversation at all.


Or the covering of an air vent in a house.


Yea, like many computing terms are normal words now being used as jargon


I'm struggling to think of any computer terms that aren't repurposed 'normal' words, initialisms, acronyms, or portmanteaus. Even the words 'computer', 'program' and 'code' are repurposed.


"thunk"? https://en.wikipedia.org/wiki/Thunk

Ah but it says, "The term originated as a whimsical irregular form of the verb think." but without citation. Hmm, I dimly recall some hacker wag saying something like, "it's the sound of a continuation hitting the stack"...

Maybe "plonk" counts? https://en.everybodywiki.com/Plonk_(Usenet)


Foo?


And the programming semaphore comes from the semaphore used as train signal to ensure that two trains are not using the same track segment simultaneously.


Semaphores are also used on shooting ranges.


The Portuguese and Spanish word for it, semáforo, is what traffic lights are called at least in parts of Latin America.

I always interpreted the programming meaning as that - traffic lights.


Moving arms also predate traffic lights for the same function - see trains https://en.wikipedia.org/wiki/Railway_semaphore_signal


It is the same in Italian (semaforo).


And also in Italy (semaforo) and I think in Romania (semafor)


Semaphore flags were for communication between ships.

https://en.m.wikipedia.org/wiki/Flag_semaphore

Or if your Monty python restaging whuthering heights


Still are, as far as I'm aware.

Smoke signals are literally the oldest known semaphore, and fire is recorded to have been used to telegraph signals over 700km per hour in the Byzantine Empire.


> 700km per hour in the Byzantine Empire

Interesting that Byzantine light seems to have been slower than modern light.


In this case, the term semaphore is equivalent to optical telegraph.

The separation isn't completely clear, but take a semaphore like a basic tool that produces signals with a strong predefined signification, like a red light in a highway traffic light. The optical telegraph have a basic signification on their symbols, like letters or numbers, but a wide range of meanings, like the message transmission.

Take a look to the wikipedia information: https://en.wikipedia.org/wiki/Optical_telegraph


Yes! Here's a real life example: https://en.wikipedia.org/wiki/Chatley_Heath


In particular, Flag Semaphore: https://en.m.wikipedia.org/wiki/Flag_semaphore


same here with my initial first take on the name. I was doing a internet search for something recently and realized this spirit of taking an existing word and deliberately overloading it in a different context rather than coining a new term with a distinct phonemes is slowly mucking up our language to disambiguate by keywords alone. It's hard work to invent new words and I get it can slow the adoption or recognition of something if the name hasn't been settled yet and it's tempting to just skip over that whole process by leapfrogging out of the mental wrestling by coopting an existing word and append a new definition to it.

Earlier in life I used to lament the lack of uniqueness to words and the existence of synonyms but later began appreciate the overlap because having the ability to talk about something with a variety of phonemes seemed to help create some conceptual distance in a conversation that was otherwise obscured by close sounding words.

But this almost lazy reuse of existing words, I'm still not sure how I feel about it now that I'm aware of its costs.



I learnt it as a cub scout. Or at least I think I was supposed to. Don't remember getting a badge.


It is still in the books as one of the optional activities you can do. If you do it depends on the leaders of the pack. I've seen it in my kids books, but we never did that page.


I love everything about this. The idea, the implementation, the demo video. My day is better for having seen it.


This is straight up awesome and must watch video just for the lolz.

But there is a thread to pull on here in terms of tangible user interfaces and the replacement of keyboards as a traditional input system. Meta's CTRL-Labs (ex Myo Armband) are working on EMG where just signaling to your muscles can trigger keyboard strokes and the bandwidth is faster than fingers or so they say. There are several other R&D efforts in that direction from BCIs to free space gesture detection through different flavors of computer vision and sensor fusion. Mr Everything Is Hacked is doing it here just for the sheer joy of the journey but there are serious reasons to play around with qwerty alternatives.


> replacement of keyboards

Or augmentation of keyboards: wand/stylus; 3D finger tracking; multitouch tablet. Extending rather than dumpstering existing refined comfortable power. My laptop used to have three extra fold-out cameras for TFA-like mediapipe games. Though tech resets are an opportunity to escape trap deadends, to "do better this time" - that thinkpad keyboard was a crippled and crippling 2-key rollover. And sensor fusion with diverse latencies (keypress vs pose-tracked video) is nontrivial - complex event processing with backtrackable app state. LLMs with UI/HID "languages" will be such fun!


How's that research going? It would be interesting to be able to "type" on any surface, just by pretending there's a keyboard in front of me.


> "type" on any surface

There's Tap Strap, and not-yet-released TapXR, though they are more chording keyboards than "keyboard in front of me".


Oh, this is like the April Fool's day joke, Google Motion, back in 2011.

https://web.archive.org/web/20151025130300/http://www.google...

Where you type email with your full body.


My first thought was Dance Dance Authentication

https://stackoverflow.blog/2017/03/30/stack-overflow-unveils...


Ironically this project also first got covered by Hackaday on April 1, so quite a few people thought it was only another prank.


I love this oh my god.I didn't know what I was expecting by a "full body keyboard", but I'm sold.


Would love to see someone take this and use it to beat dark souls.


Here's someone playing Dark Souls with poses through a Kinect: https://www.youtube.com/watch?v=xak0l2-Zg9w


Mmmm it wouldn't be too different from using a DDR pad I suppose?


Fun Fact! the "peace sign" was originally created a superposition of "N" and "D" semaphores as it was a logo for Nuclear Disarmament.

[edit] I originally put U+262E in my comment, but apparently HN strips some unicode characters?


You could get a slight speedup by matching letter frequency with easiest/fastest semaphore, similar as to morse code and dvorak typing do it. You loose compatibility with the rest of the world though, but if you are only using it for personal typing it's not a problem. You could also do a braille mapping instead of using semaphor so braille readers can get a workout.

A good way to play interactive fiction games: X, I, U, D, N, S, W, E, Z, OPEN, CLOSE, GIVE, ASK/TELL ABOUT https://www.microheaven.com/ifguide/step3.html


The jump for space and the jazz hands for exclamation mark are pure gold


I am mostly impressed by the fact that he can keep a straight face while signaling. Impressive!


It honestly takes all my focus and concentration to remember the signals quickly. That's the look of 100% dedication to a silly task!


I am curious to know how far you take this in terms of it becoming second nature. As in, maybe after days and weeks of practice, you can type stuff effortlessly ?

How far away from effortless mastery are you?


It's always going to be plenty of physical effort! In terms of the mental overhead: there are some letters/motions like R, F, D that just feel second-nature already from lots of practice and more 'obvious' positions, but I still have to think about most of them. A few letters still trip me up, like remembering M versus S (mirror images). I'd love to find a seasoned signalman to get their take.


Makes sense.

I find your project incredibly cool. And your video is awesome. Well done!


Finally mom won't worry about my health anymore! Programmers we dance to program! That's a lot of calories burned I think.


the only keyboard that requires supportive underwear rather than a palm rest.


If you haven't done so already, see if you can connect with someone on the music side, particularly someone used to working with programmable sound buttons. The combination of your setup plus programmed sound macros could result in something fascinating.


I've got some musical + basic audio background and would love to turn this into a musical instrument or sample generator, just haven't worked out the best way to translate motion to sound yet. Any sound engineers or DJs who want to collaborate, reach out!


It could certainly be used to trigger samples, combined with a looper[0][1]?

[0] https://www.youtube.com/watch?v=3vBwRfQbXkg

[1] https://www.youtube.com/watch?v=Wc_SlqwtUXI


Reminds me of Eurythmics from back in the day when I attended a Rudolf Steiner school.


That alphabet would probably be easier to chain.


Eurythmics and not the Village People?



This reminded me of the esoteric programming language Bodyfuck (2010) by Nik Hanselmann:

http://nik.works/project/bodyfuck/


Pair this with Superhuman and you'll have Gmail Motion (April Fools product) in the flesh! https://youtu.be/9KEcfP_CWVo


I had an idea for putting a split keyboard on the cummerbund of a reasonably standard body armor vest, right to each side of the front plate. The display could either be a vest mounted flip out phone (very simple) or it could be displayed on the helmet mounted IVAS system or injected into the front of an image amplification tube. I doubt many people would use it though, due to the learning curve.


Missed an opportunity to do YMCA



It's in the video.


Cool idea. I did something similar- a whiteboard with various magnetic icons that were original SVGs. I trained an object detector to recognize the different icons and extract that into a data structure depending on the icon orientation and relative positioning. I wanted to patent that as a brand new way of programming- visual programming with real objects. Never went anywhere with it.


  command: lift left leg to ~horizontal thigh
  control: lift right leg to ~horizontal thigh
So command+control => midair splits?


That’s a good use case for Sticky keys[1] for able-bodied people that wish to remain so.

[1] https://en.wikipedia.org/wiki/Sticky_keys


Looks exhausting, but loved the exclamation marks!


I don't have anything constructive to add except, well done! Total commitment to the bit, investment far in excess of anything reasonable, great execution, full of whimsy, and it's grounded in ancient tech. Hilarious and also deeply impressive, and you pulled it off with a young kid in the house.


Cool project. I've always wanted to learn the semaphore alphabet, and I'm interested in alternative keyboards.

The lifeguards at the beach I visit use it to communicate to each other from between lifeguard stands, and I'm always curious what they saying.

Plus, I thought it would be fun to be able to communicate with them in their own secret(ish) language.


It's highly likely they are communicating in a shorthand that isn't meaningful to you even if you could read the individual letters!


I couldn't figure out why he was wearing all the French gear, the author isn't french...! I presume it's a nod to the Frenchman, Claude Chappe, who invented Flag semaphore, the system he build it with. @fheisler, if you happened to see this, please let me know if I'm right! :)


Hm which gear was particularly French? I was just channeling 80s aerobics workout in the intro, or the style of the songs played in the video.


In the gif on your github, all the "workout" gear colours are blue white and red, the colours of the French flag. If it was a happenstance, maybe you can just say it was on purpose, so...er.. I don't need to tell my therapist I'm reading too much into everything again?



Your wristbands look like the French flag.


And the Netherlands flag, so…


'Murica is the only red, white, and blue!

...Actually they just happened to be the first cheap bands that came up on Amazon.


A solution looking for a problem indeed!


There’s probably quite a few kindergartens that could benefit from having something like this installed.


Magnificently pointless, in the finest traditions of the old-time hackers. Sir, I salute you.


I wonder if there are any good keyboards that are part of trousers, but that are also hidden, you know not immediately obvious that you've got a keyboard on your trousers.

Then you could have a computer in the pocket or a bag and a HUD! That could be very cool!


You can integrate 30% or smaller wireless keyboard (with Elite-C) in your trousers IMHO. This would address "good" part (think something like this https://www.tzcl.me/blog/rae-dux but without PCB and wired using wires). At least I use adux keyboard of similar size daily. Or you can go even smaller with something like this https://artsey.io/ but I am not sure if this could be considered good. Next part would be concealing it - kailh low profile are too high IMHO for pants. There are switches that are even lower but most probably this might not work. I guess captive touch sensors might be solution but I am not sure if they would work well as keyboard. I guess some art would help concealing as well.

Still I don't feel this would be really comfortable to type on.


Just as an fyi, that second device is a chorded keyboard. I only mention it because the name's not on the page. https://en.wikipedia.org/wiki/Chorded_keyboard


I had a coworker write a little app to vibrate with Morse code at incoming messages, and turn the entire screen into a single button that he could tap out replies.

It worked well enough.


I thought you were just pleased to see me.


Please consider support for emacs chording with Ctrl and meta/alt.

Perhaps DDR-esque foot placement?


The idea of "dancing your name" seems to have caught on in an unexpected way.

Love the project idea, the outfit worn for the demo video AND the fact that the "!" sign seems to be a "shaking fingers" power pose :D


Seeing OpenCV in this post-ML world, gave me some nostalgia /teary eyed emoji


A sign-language based keyboard controller would be immediately useful.


This is so cool. Any idea of the state of the art to do this with hand gestures? I wanted to do something like this but in the style of the Naruto seals used to perform ninjutsu.


I've seen lots of examples of interpreting sign language, but not general/customizable gestures. Should be very doable though!


Completely impractical and completely wonderful fun. Thank you for your work, OP! I love seeing projects full of joy, mischief, and wonder for the power of computing.


I always wanted to be able to type while I’m dancing! Although maybe not have what I am typing dictate the choreography… still, amazing work!


This is superbly geeky and I love it! Unless you are missing an arm or a leg. How would one go about adding accessibility to a project like this?


My face-computer interface is probably a better bet if you're working with fewer than four limbs but have full facial control: https://github.com/everythingishacked/CheekyKeys

The next version will be more customizable, so you can create whatever gestures you'd prefer with whatever means at your disposal!


Hence proved, smart engineers have sense of humour too! That demo video showing printing of "Hello World!" is so funny :)


The peak mechanical keyboard will be when we teach robots to accept voice dictation and they then write what we say using these motions.


If this came out in 1978 when I first started to program, I would be in better shape than most current-day crossfitters!


Step aside, Dvorak


Reminds me of the (was it family guy?) parody of the starship/trek captain who makes crazy contortions as he speaks.


My vim experience is going to be more ergonomic than ever, plus after I deliver this project I'm gonna be ripped.


“You can’t code and workout at the same time”

Oh yeah, watch me


do you need 3 people to do a choreographed emacs key chord? I guess it could finally make peer programming necessary.


I'd love to see this used to play QWOP


I tried that out! It was honestly hard to tell a difference, I'm already so bad at it...


I'm reusing this for our next hackathon, this will be an awesome & fun way to write PromQL queries


Genius! Next up: Oauth plug-in so you can authenticate with your own unique “dance”. Reminds me of the OA.


Ooh yes, I wonder if you could use it like gait recognition to define your own not-easy-to-replicate motion. My dance is my password...


I can imagine banks using this as 2FA for the next generation.


And a new speedcoding e-sport is born!


That’s pretty fun. Reminds me of the creativity with Xbox Kinect back in the day.


Not what I expected, but not disappointed either.


amazing, soon we will all be just prompt wizards casting our spells using arcane gestures


We call those bash scripts where I come from. =:8)


This is so dorky. I love it.


And I thought I had RSI…


He’s got to have a peace sign with tongue moving back and forth as a gesture as well


This guy Chucks Norris.


what is the practical use of this?


next time I'm spastic I'll tell my wife I'm actually working in my next project




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: