Tuesday, November 11, 2014

Captioning With Plover and Vim

As promised, here's my video of using Plover to enter and edit text in Vim!



And in case you're interested, here are the steno definitions of the commands I use in the video:

"STPAO*EUL": "{#Escape}:w c:/proj/.txt{#Left}{#Left}{#Left}{#Left}{^}",

"STPHA*EUF": "{#Escape}:silent w{#Return}:{#Return}{#Control_L(End)A}",

"SPO*EL": "{#Escape}:set nospell{#Return}:{#Escape}{#Control_L(End)}A",

""SKHR*EBGS": "{#Escape}/zxzxz{#Return}:{#Escape}A",

"PHOEUFP": "{`^}

"SPWAO*UT": "{#Escape}:%s/{^}",

"KW*RPB": "{#Escape}{>}bvwy:split c:\\proj\\plovernotes.txt{#Return}o{#Escape}jp:silent w{#Return}:silent q{#Return}:{#Escape}{#Control_L(End)}A",

"SR-RS": "{#Escape}{#Control_L(End)}A",

"TKHREPBD": "^vG$xo",

And bonus definition which I use in the video to get rid of an extra space but don't mention specifically:

"TW*EUT": "{#Escape}:set textwidth=46{#Return}ggvG$gq:%s/  / /g{#Return}:%s/ \\n/{#Control_L(Q)}{#Control_L(M)}{^}/{#Return}:%s/\\n /{#Control_L(Q)}{#Control_L(M)}{^}/{#Return}:%s/\\n\\n\\n/{#Control_L(Q)}{#Control_L(M)}{#Control_L(Q)}{#Control_L(M)}/{#Return}:silent w{#Return}{#Escape}/zxzxz{#Return}:{#Escape}{#Control_L(End)}A",

Monday, November 10, 2014

Stenosaurus Update and Survey Results!




Check out Josh's latest update on the Stenosaurus Blog! He's almost done with the PCB layout, the key switches are in production, and the countdown to getting a solid crowdfunding launch date is so close I can taste it!

More Plover news:

* There's a new n-key rollover keyboard that's selling on Amazon for less than $20.

* There are also rumors of a new gaming laptop with a mechanical keyboard, though no solid word yet on whether or not it's nkro. If it is, though, I would be sorely tempted to shell out for one, even though I'm not much of a PC gamer. The idea of having an all-in-one laptop and steno machine sounds like absolute bliss to me.

* There's a new branch of Plover that includes support for snake_case, CamelCase, Title Case, and CAPS MODE. More details on the Google Group.

Also, here are the highlights from the Plover Community Survey results:

We got 64 responses in total, which is a nice increase from last year's count of 40.

What is your current steno level?



Absolute beginner - I'm very fresh. The very concept of steno is new to me, and I haven't tried it yet: 20%
Beginner - I know what steno is and have tried it: 41%
Intermediate - I'm fairly good, but steno isn't my best way to input text: 20%
Advanced - I prefer steno to qwerty for some tasks: 11%
Proficient - Steno is my primary mode of text input: 8%

What do you value in steno?



Speed: 84%
Fluency: 45%
Ergonomics: 59%
Wearability: 11%
Accessibility: 20%
Money: 20%
Cachet: 17%
Other: 14%

What do you use or plan on using steno for?



Nothing right now/just exploring: 22%
Writing prose/emails/journal/blog etc.: 66%
Conversation (IM, IRC, or text-to-speech): 44%
Writing software/code: 42%
Data entry: 14%
Offline (prerecorded) transcription/captioning: 27%
Realtime (live) transcription/captioning: 33%
Court reporting: 14%
Other: 8%

How long have you been learning or using steno?



0 - 2 months: 42%
2 - 6 months: 13%
6 months - 1 year: 11%
1 - 2 years: 14%
more than 2 years: 17%

Do you own a steno machine?



No - And I don't intend to get one: 5%
No - But I intend to get one: 20%
Yes - Sidewinder (n-key rollover keyboard): 23%
Yes - Ergodox (n-key rollover keyboard): 11%
Yes - Filco Majestouch (n-key rollover keyboard): 5%
Yes - Other n-key rollover keyboard: 25%
Yes - Stenoboard: 9%
Yes - Stentura Protocol machine: 17%
Yes - PR protocol machine: 3%
Yes - TX Protocol machine: 9%
Yes - Other commercial steno machine: 9%
Yes - Manual (non-electronic) steno machine: 6%
Other: 11%

Are you a professional stenographer OR intend on becoming one?



No: 69%
Yes - I am a professional stenographer: 6%
Yes - I intend to become a professional stenographer: 17%
Other: 8%

What steno learning tools have you used?



Learn Plover! (Online textbook): 67%
Qwertysteno.com: 44%
Plover Dojo: 20%
Stenotutor: 16%
Steno Keyboard (on Android): 16%
Steno Learner: 3%
Steno Typer: 5%
Other: 13%

What operating system do you use for steno?



Windows: 50%
Mac: 27%
Unix/Linux: 39%
Android: 16%
Other: 0%

What have been your biggest frustrations in learning steno?



Steno theory is confusing: 14%
Too much memorization of briefs: 11%
Not enough practice material: 22%
Too tedious/repetitive: 13%
Plover dictionary is incomplete/inconsistent: 13%
Lack of free structured learning modules: 22%
Fingers won't do what I tell them: 14%
Building speed happens too slowly: 39%
Other: 34%

Selected comments:

"Not sure who/what is at fault but there seems to be missing the theory of steno so I can work things out for myself. Things don't seem to make sense and I just have to learn them. I don't learn well like that."

"I love Plover, you've done a great job. I'd love to see more examples of you beating records on TypeRacer. We should also focus on documenting Plover better, making it more accessible to new developers."

"Thank you for Plover! I work as a live voice captioner, using Dragon software, and the stenos at our company always get the fast, challenging jobs that I enjoy but that few other voice captioners can handle. Hoping to add a new string to my bow with this."

"Such a nice idea. Not sure if qwerty keyboard is really practical. Thumb and wrist position with my poker 2 keyboard is very awkward and the gaps between the keys definitely need fixing. Sustaining a home row position is equally difficult without staring at the keyboard. Nice for learning but I'm not sure it's ever going to be comfortable without a dedicated keyboard. Of course I could be entirely wrong. Will have to do a little key cap mangling and give it some time. It creates an entry point that didn't exist before but by the same token it may create a barrier with people quitting simply because the tool is awkward even though the system is logical. Thanks for the nice work."

"Would love Plover-centric typing games; I play Cargo Crisis occasionally but would like something a little less repetitive, especially if it let me 'level up' over time and ramped up speed and vocabulary range."

"Fantastic work. I'm brand new to this, but it looks incredibly exciting. I'm a software developer with a heavily customized keyboard layout. I had started developing my own chords, for common word prefixes and suffixes, but Plover is clearly infinitely better. Look forward to seeing the next developments of the Stenosaurus."

"It has been two years since I dropped out of court reporting school. I learned the theory pretty fast and was able to achieve 180 wpm within a year and a half. I started briefing everything like crazy as well as trying to implement aspects of Magnum Steno theory. This caused me to have a major burnout where I couldn't stand it any longer. I packed up my steno machine and haven't looked at it for two years. I am a stay at home mom and so I have kept busy with that since then. I hate to waste what talent I had with steno as I have been recently considering getting back into that world and dusting off the machine. The court reporting school I went to cost so much money that I do not want to get even more in debt than I am so I am looking for free options. I am also going to go back to my StenEd theory instead of trying to brief everything so I do not burn out again."

"It’s been about a year now since I first learned of Plover and stenography. I’m typing at 25 wpm after about 10 months of hobby dabbling. That’s slower than I expected to type after that long, but I’m still excited by steno and want to stick at it."

"I'd really like if there was some kind of game, with absolute beginner mode, that also presented the keys onscreen, and didn't force 100% accuracy."

Thanks to everyone for answering! It's given us some really useful things to think about.

Tuesday, October 28, 2014

Recent News Roundup

Just a hodgepodge of new stuff in the world of open source steno:

* I built my Stenoboard 1.1 a few nights ago, and I'm really happy with it! It writes smooth as butter, and it turns out it's slim enough to fit in the laptop sleeve of my backpack underneath my laptop, which means I now carry two steno machines with me at all times. Great for peace of mind. Emanuele has also just released a brief user manual, which explains how to switch it into different protocols, in case you want to use it with non-Plover steno software.

* Since I had my Stenoboard with me during my break yesterday, I also got to try out Brent's new Android app for steno training: Speed Drill. It's really fun. Great if you only have a few minutes with your phone or tablet and want to get some training in.

* For Linux users who are frustrated with Plover's handling of keyboard events (particularly ruinous in applications like Vim), there's a new fork that solves the problem. This also allows you to assign one qwerty keyboard as a Plover device and keep your regular keyboard mapped to qwerty, which is another feature people have been clamoring for. Of course we're hoping to roll this change into the main branch at some point, but I thought I should offer it as an option for now.

* We now have a Wikipedia page, thanks to our recent publicity from Hacker News. It's just a stub so far, but it's a start. Feel free to flesh it out as you see fit!

* Here's an ingenious method of making your own steno-friendly qwerty keyboard without laser-cut keytoppers from ArchZombie1y. Use coins and superglue!



* If you're looking to make your own DIY keyboard and coins aren't your thing, new Plover ally Robert points out that these flat square keys from Signature Plastics look pretty ideal.

* Finally, longtime Plover user Mark is going to take the National Court Reporter Association's Certified CART Provider test this November -- using Plover! They require submission of steno notes, so this is what he plans to do:

"In Plover: Configure (opens Plover Configuration box), Logging, Browse (click on it), there is a file called plover with the current date and time (saves everything in that instance of Plover); right click and SAVE AS to the flash-drive memory stick being used (or CD); that's it. It gives more info than required by the testing folks at NCRA, but does give what they want.

I also save the actual text file transcript to the memory stick, so there are two files on the drive."

Good luck, Mark!

Coming soon on the Plover Blog: Results from the Plover Community Survey, a short essay on where I see amateur steno going over the next few years, and a video of me using my favorite one-stroke Plover Vim commands to make my daily captioning work a million times easier.

Sunday, October 26, 2014

Longer Plover Coding Snippet in Python


New Video!


I've been meaning to do this for a while, but our delightfully inexplicable appearance on Hacker News this morning finally gave me the buttkick I needed to just sit down and do it. The previous Python coding snippet I recorded with Plover was only 25 seconds long, and I realized I needed something more substantial to show programmers how easily it can be done. For some reason, people often assume that writing punctuation and special characters in steno is harder than writing words or phrases. Obviously that's not the case (and I don't understand why people think it would be), but this seemed like the simplest way to demonstrate that.

From my video description:

This is me transcribing some of the code from Plover's codebase, using Plover and a steno machine. I didn't write this code, since I'm only a Python novice. It was originally written by Plover's awesome developers. But I transcribed it from a text file into Vim to demonstrate how easily and fluently code can be written with steno. It's not primarily about speed, but about chunking commands and words into single strokes, as opposed to breaking them down into individual letters and typing each letter out one by one as in qwerty. Also notice how simple error correction is; an incorrect word is deleted with a single stroke. For more information, visit: http://openstenoproject.org

There is no audio in this demonstration, so no captions are needed.

Monday, October 20, 2014

Open Steno Project Community Survey 2.0

Last year we conducted a survey on the Plover community.

Since then, we've added hundreds of new people to the mailing list, shown that Plover is now mature enough to be used professionally, added several new hardware options such as the Stenoboard and the Ergodox, formed the Open Steno Project, and written a free online interactive textbook. It's been quite a year, to say the least! I'm very curious to see how our demographics have shifted as we've grown.

Take the Open Steno Project Community Survey 2.0 today, and please feel free to share it around to anyone who might be interested!

Thursday, September 11, 2014

Metakey Kludge

I'll let Ted from the Google Group describe his ingenious new solution for Plover's lack of arbitrarily stackable metakeys. (You can explicitly define a metakey+key combination in the dictionary, but you can't map a stroke to, say, Control and then be able to simulate holding it down while choosing another key in realtime to be activated along with it.)

Hello PloverSteno!

Intro:

I've seen complaints in the past about the lack of a "sticky modifier" function in Plover. The idea being that you could define a stroke for Shift, one for Control, then using these strokes write something like "Control/Shift/p" or any other stroke.

Well, today I'd like to announce my workaround!

It's a Python script that takes a list of modifiers (Control, Super, Alt, Shift, by default) and a list of hotkeys (alphanumeric, enter, backspace, delete, and arrow keys, by default) and then generates every *possible* combination in order to give you one-off hotkeys. The output is a dictionary that you load into Plover and you're ready to go.

Of course, I recommend a single stroke for something common like "Ctrl-v" for paste, but sometimes you just need a one-off "Control-alt-shift-Left arrow" and that's what this script aims to let you do.

As a little bonus, there's a definition in there that has 100 strokes in order to increase Plover's buffer length.

Usage:

If you don't like my default strokes, you can go into the script and change the "modifiers" or "hotkeys" lists in the main method. But these are the defaults, as per the script:

- Alt/Option: TLA* (THRA*)
- Command: KM* (KPL*)
- Control: KL* (KHR*)
- Shift: SF* (STP*)

Otherwise all the letters, numbers, return, and backspace are all Plover default.

Of note, if you want to just "press" the combination without a key, for example in Windows you can use "Ctrl+Shift" to change keyboard layouts, use the blank stroke:

- "SP*S"

I also had to add an entry for the delete key, which is just:

- DLAO*ET (TKHRAO*ET)

Download:

Download it from the GitHub repo. "modifiers.json" is the dictionary with all my defaults, "makeShortcuts.py" is the Python script to run to make the dictionary.

Please, feedback is welcome. Also think of this as a workaround, not a permanent solution to the problem.


Many thanks to Ted for this! I have a feeling it'll come in extremely handy.

Sunday, September 7, 2014

Plover Learn Integrated Into Learn Plover!

Erika has just finished adding all the drills in Learn Plover! to Plover Learn, her interactive training site, and Zack in turn has linked to each lesson within the corresponding chapter of his book. Between the two of them, the steno learning curve just got a whole lot flatter.