November 27, 2014
On Thu, Nov 27, 2014 at 02:56:48PM +0000, Adam D. Ruppe via Digitalmars-d wrote:
> On Thursday, 27 November 2014 at 06:51:00 UTC, Joakim wrote:
> >However, I'm looking forward to voice recognition
> 
> I hate voice recognition because it doesn't actually think about what you're saying... it is just another way to input crude information into the same idiotic core, and keyboard symbols are better.

+1000!! I can communicate with my computer in far more efficiently and in a far more precise way than I can speak within the same time. I mean, if I wanted to say:

	const(int[]) myFunc(T)(const(T)[] input) { ... }

what would I have to pronounce? "const open parenthesis int open square bracket close square bracket close parenthesis space em why capital eff you en see open parenthesis capital tee close parenthesis open parenthesis const open parenthesis tee close parenthesis open square bracket close square bracket space input close parenthesis space open brace ..." ??

And what of Vim editing commands? "Move 5 lines down, 6 words to the right, 2 characters to the right, substitute next 5 characters, aye bee see dee ee, end, save file"? I could type "5j6w2l5sabcde<ESC>:wq<enter>" in a fraction of the time.

Not to mention how many times I'd have to correct the speech recognizer software which will inevitably get half the characters wrong because of ambiguous pronunciation (by "queue" do you mean Q-U-E-U-E or the letter Q?).

Please, give me a keyboard anytime.


> What would be interesting - though not something I want in the real world, I kinda enjoy getting my paycheck - is a voice AI like they have in Star Trek.
> 
> "Computer, I need a terminal emulator."
> 
> a few beeps, then it pops one up
> 
> "No, that sucks, make the mouse wheel work."
> 
> the computer beeps as it looks at existing things to figure out what you meant by "work" then adjusts the program
> 
> Self-programming computers, now *that's* a voice interface.

Let's make one in D! ;-) *That* will be one killer app for sure!


T

-- 
People demand freedom of speech to make up for the freedom of thought which they avoid. -- Soren Aabye Kierkegaard (1813-1855)
November 27, 2014
On Thursday, 27 November 2014 at 07:16:17 UTC, ketmar via Digitalmars-d wrote:
> i just imagined some sort of i... human standing against the wall,
> gesticulating like mad and talking nonsense to the void... creepy.

Do you think most people don't find it creepy now, when they see you staring into the glow of your monitor with your fingers madly thrumming away at a keyboard? ;)

> i bet that such intefaces will be widespread, but faster and more
> usable? nope. i can type much faster than i'm talking, i can edit what
> i typed and... and just won't buy it. but yes, they *seems* to be
> better than plain old keyboard.

You would have to be a very slow talker if you could type faster.  You can edit what you spoke with voice commands too, people do it now.

On Thursday, 27 November 2014 at 08:17:03 UTC, deadalnix wrote:
> On Thursday, 27 November 2014 at 06:51:00 UTC, Joakim wrote:
>> That's because GUIs are not aimed at highly technical power users
>> like you, but for most people, who don't want to memorize a bunch
>> of technical commands and barely know how to type.  They would be
>> much slower with ratpoison and a terminal than you are with a
>> GUI. ;)
>
>
> I hear that false dichotomy so many time that I lost count. That's is an idiotic mindset. You can have a gui that is also manipulable all via keyboard in an efficient manner.
>
> gnome-do is a good example of this:
> https://www.youtube.com/watch?v=oTxqE3M1k0U
>
> Because of that mindset, we are in 2014 and all terminal emulator are complete garbage to the point I ended up coding my own (which is garbage as well but at least does what I do and I can fix it when it doesn't, and it is in D :) ).

Except I never said you couldn't have keyboard-manipulable GUIs, just that that's not the norm, as you yourself admit, because most people don't want to learn how to use those either.  gnome-do looks nice: I often use the search box in the Windows Start menu to launch applications and get into the right system settings, ie by using the keyboard.

On Thursday, 27 November 2014 at 14:56:49 UTC, Adam D. Ruppe wrote:
> On Thursday, 27 November 2014 at 06:51:00 UTC, Joakim wrote:
>> However, I'm looking forward to voice recognition
>
> I hate voice recognition because it doesn't actually think about what you're saying... it is just another way to input crude information into the same idiotic core, and keyboard symbols are better.

Well, the "idiotic core" is common to either input, and most people talk much faster than they can type:

http://en.wikipedia.org/wiki/Words_per_minute

> What would be interesting - though not something I want in the real world, I kinda enjoy getting my paycheck - is a voice AI like they have in Star Trek.
>
> "Computer, I need a terminal emulator."
>
> a few beeps, then it pops one up
>
> "No, that sucks, make the mouse wheel work."
>
> the computer beeps as it looks at existing things to figure out what you meant by "work" then adjusts the program
>
>
> Self-programming computers, now *that's* a voice interface.

We still have some way to go to get the computer to accurately translate all normally spoken speech to text, gotta get that done first.

On Thursday, 27 November 2014 at 18:11:03 UTC, H. S. Teoh via Digitalmars-d wrote:
> On Thu, Nov 27, 2014 at 02:56:48PM +0000, Adam D. Ruppe via Digitalmars-d wrote:
>> On Thursday, 27 November 2014 at 06:51:00 UTC, Joakim wrote:
>> >However, I'm looking forward to voice recognition
>> 
>> I hate voice recognition because it doesn't actually think about what
>> you're saying... it is just another way to input crude information
>> into the same idiotic core, and keyboard symbols are better.
>
> +1000!! I can communicate with my computer in far more efficiently and
> in a far more precise way than I can speak within the same time. I mean,
> if I wanted to say:
>
> 	const(int[]) myFunc(T)(const(T)[] input) { ... }
>
> what would I have to pronounce? "const open parenthesis int open square
> bracket close square bracket close parenthesis space em why capital eff
> you en see open parenthesis capital tee close parenthesis open
> parenthesis const open parenthesis tee close parenthesis open square
> bracket close square bracket space input close parenthesis space open
> brace ..." ??
>
> And what of Vim editing commands? "Move 5 lines down, 6 words to the
> right, 2 characters to the right, substitute next 5 characters, aye bee
> see dee ee, end, save file"? I could type "5j6w2l5sabcde<ESC>:wq<enter>"
> in a fraction of the time.

Do you actually sit there and count the number of lines, words, and characters so you can type out a command like that?  Sounds tedious, I'd just use search to jump to the word, ie "/uvwxyz<enter>", then replace the letters.  Similarly, you'd say, "Go to uvwxyz and replace with abcde<pause>save and quit."  I'd be done with that long before you're done counting out the number of words to the right. ;) As for programming, language syntax is currently optimized for keyboard input, it will have to be redone for voice input.

> Not to mention how many times I'd have to correct the speech recognizer
> software which will inevitably get half the characters wrong because of
> ambiguous pronunciation (by "queue" do you mean Q-U-E-U-E or the letter
> Q?).

There are heuristics that can get such homonyms right based on the context.  As voice recognition advances, they are being applied and increasing accuracy by leaps and bounds.  One nice consequence of the current mobile boom is that a ton of work is getting put into improving the speech recognition engines of Google Now, Siri, and Cortana.

> Please, give me a keyboard anytime.

Only if you want to go really slow, like people who still write stuff out longhand or use mechanical typewriters these days. :) Take a look at the wpm numbers I linked above, voice is much faster than typing and recognition is becoming much more accurate.
November 27, 2014
On Thu, 27 Nov 2014 19:58:32 +0000
Joakim via Digitalmars-d <digitalmars-d@puremagic.com> wrote:

> > i bet that such intefaces will be widespread, but faster and
> > more
> > usable? nope. i can type much faster than i'm talking, i can
> > edit what
> > i typed and... and just won't buy it. but yes, they *seems* to
> > be
> > better than plain old keyboard.
> 
> You would have to be a very slow talker if you could type faster.

  assert(0, assumeNoGC(() { import std.format : format; return "%s".format("hi")~" there!"; })());

anyone? nononono, i DON'T want to voice that! ah, spaces must be voiced to, 'cause i want "format : format", not "format:format".

speech recognizer that knows everything about my style in each computer language i ever used? no, thanks, i certainly don't want to configure it, i'll die of the old age before completing that task.

>   You can edit what you spoke with voice commands too, people do
> it now.
vim anyone? i can't even speak that vim commands (hey, i don't remember 'em, my fingers remember... but my fingers can't talk).

ah, and occasional "ah, hello, honey, how do... DAMN IT! FSCK! GET LOST! oh, no, honey, i'm not talking with you... what do you mean by 'you never talking with me'? ehm... shit."


November 27, 2014
On Thursday, 27 November 2014 at 20:09:04 UTC, ketmar via Digitalmars-d wrote:
> On Thu, 27 Nov 2014 19:58:32 +0000
> Joakim via Digitalmars-d <digitalmars-d@puremagic.com> wrote:
>
>> > i bet that such intefaces will be widespread, but faster and more
>> > usable? nope. i can type much faster than i'm talking, i can edit what
>> > i typed and... and just won't buy it. but yes, they *seems* to be
>> > better than plain old keyboard.
>> 
>> You would have to be a very slow talker if you could type faster.
>
>   assert(0, assumeNoGC(() { import std.format : format; return "%s".format("hi")~" there!"; })());
>
> anyone? nononono, i DON'T want to voice that!

"assert zero<pause>assumeNoGC lambda import standard format symbol format done return string stringformat done dot format string hi done append string space there bang done done<pause>"

I just tossed that off from the top of my head so you can always find a hole or two in it, but the point is that you'd use a vocal shorthand and the voice IDE would automatically pop up two arguments for the assert, so simply pausing would take you to the next one, just as keyboard-oriented IDEs provide such niceties today.  Eventually, programming language syntax will have to be redone for voice, as I noted before.

> ah, spaces must be voiced
> to, 'cause i want "format : format", not "format:format".
>
> speech recognizer that knows everything about my style in each
> computer language i ever used? no, thanks, i certainly don't want to
> configure it, i'll die of the old age before completing that task.

You'll simply hand the recognizer software a bunch of old code that exemplifies your programming style and it'll figure out that you prefer spaces there and automatically add them for you, without having to say it or configure it. :) That's actually fairly easy, if your style is at all consistent.

>>   You can edit what you spoke with voice commands too, people do it now.
> vim anyone? i can't even speak that vim commands (hey, i don't remember
> 'em, my fingers remember... but my fingers can't talk).

Already addressed with a specific example from Teoh before.

> ah, and occasional "ah, hello, honey, how do... DAMN IT! FSCK! GET
> LOST! oh, no, honey, i'm not talking with you... what do you mean by
> 'you never talking with me'? ehm... shit."

"break<pause>ah, hello, honey, how do..."
November 27, 2014
On Thu, 27 Nov 2014 20:46:29 +0000
Joakim via Digitalmars-d <digitalmars-d@puremagic.com> wrote:

> On Thursday, 27 November 2014 at 20:09:04 UTC, ketmar via Digitalmars-d wrote:
> > On Thu, 27 Nov 2014 19:58:32 +0000
> > Joakim via Digitalmars-d <digitalmars-d@puremagic.com> wrote:
> >
> >> > i bet that such intefaces will be widespread, but faster and
> >> > more
> >> > usable? nope. i can type much faster than i'm talking, i can
> >> > edit what
> >> > i typed and... and just won't buy it. but yes, they *seems*
> >> > to be
> >> > better than plain old keyboard.
> >> 
> >> You would have to be a very slow talker if you could type faster.
> >
> >   assert(0, assumeNoGC(() { import std.format : format; return
> > "%s".format("hi")~" there!"; })());
> >
> > anyone? nononono, i DON'T want to voice that!
> 
> "assert zero<pause>assumeNoGC lambda import standard format symbol format done return string stringformat done dot format string hi done append string space there bang done done<pause>"
ugh... i don't even have to type the whole words with keyboard. but i like the idea of shortening "assert" to "ass"... ;-) it's starting to remind me my 4-letter word mumbling when i writing the code. ;-)

> You'll simply hand the recognizer software a bunch of old code that exemplifies your programming style and it'll figure out that you prefer spaces there and automatically add them for you, without having to say it or configure it. :) That's actually fairly easy, if your style is at all consistent.
that recognizer still must be able do do semantic analysis on each language i want to use, or it will fail on almost any compilcated sentense.

> > ah, and occasional "ah, hello, honey, how do... DAMN IT! FSCK!
> > GET
> > LOST! oh, no, honey, i'm not talking with you... what do you
> > mean by
> > 'you never talking with me'? ehm... shit."
> "break<pause>ah, hello, honey, how do..."
so i can't code and talk simultaneously anymore? ah, that's what i call "new technologies"! ;-)


November 28, 2014
On Thursday, 27 November 2014 at 19:58:33 UTC, Joakim wrote:
> You would have to be a very slow talker if you could type faster.

I don't think it would be a one-to-one correspondence. I saw a youtube where a guy had rigged a voice interface for code and he didn't say things like "foo left paren bar comma baz right paren semicolon" it was more like "foo bah bar *click*" - he made a new language with various sounds.

On the other hand, by the same reasoning, talking faster than typing doesn't necessarily match up because like how would you say "a = *b | c"? I would probably say something like "a equals what's pointed to by by bitor c"... and I type it at about the same speed as I say it since there's more syllables than symbols. Autocomplete and such can give an edge to the typing too.

I don't think talk-coding would be slow - in my head, sometimes I say these things as my fingers translate it to code - but I don't think it would be much faster either.

Now, talking vs typing prose is a different story, my fingers couldn't keep up with my brain on writing this email. But with code, my fingers typically aren't the bottleneck.


(and it certainly wouldn't revolutionize the industry, where the slowest part for me tends to be figuring out WTF the customer is asking for anyway...)

> Windows Start menu to launch applications and get into the right system settings, ie by using the keyboard.

A friend asked me over the weekend how to get to the calculator on Windows 8. One person was giving the old Win 95 answer "click start, go to programs, accessories, then click calculator". That doesn't work on Win8... and I think the new way is so much better:

I said "hit that windows button on the keyboard then type "calculator" and hit enter".

She did that and agreed it is super easy.


I think the biggest benefit of a GUI isn't so much ease of use as the ability to browse the options. If she didn't know there was a calculator, she would never have thought to just type the word, but might have noticed the icon while looking at the start menu. But if you already know what you want, it is hard to beat just asking for it directly.

> We still have some way to go to get the computer to accurately translate all normally spoken speech to text, gotta get that done first.

Right.
November 28, 2014
On Thursday, 27 November 2014 at 17:55:47 UTC, Jacob Carlborg wrote:
> I'm using iTerm2 [2] on OS X. I think it's pretty good. Some of the cool features it supports:
>

I'm using it on my mac, but it is messing up with specials keys like command, control and friends.

Both the control key and the terminal are bleeding edge technology, so it is expected that they are not handled properly...
November 28, 2014
One thing I actually *like* about the change: I didn't force the linux console to use VGA text mode this time. I usually do because I adore the vga text mode, it is so beautiful and elegant.

But one big advantage to letting new linux do its thing with the framebuffer console: switching VTs between it and X is *fast*. Like instant fast. I like that a lot.
November 28, 2014
On Fri, Nov 28, 2014 at 03:35:17AM +0000, Adam D. Ruppe via Digitalmars-d wrote:
> One thing I actually *like* about the change: I didn't force the linux console to use VGA text mode this time. I usually do because I adore the vga text mode, it is so beautiful and elegant.
> 
> But one big advantage to letting new linux do its thing with the framebuffer console: switching VTs between it and X is *fast*. Like instant fast. I like that a lot.

Yeah, kernel mode switching is teh k00l.


T

-- 
A linguistics professor was lecturing to his class one day. "In English," he said, "A double negative forms a positive. In some languages, though, such as Russian, a double negative is still a negative. However, there is no language wherein a double positive can form a negative." A voice from the back of the room piped up, "Yeah, yeah."
November 28, 2014
On Friday, 28 November 2014 at 03:35:19 UTC, Adam D. Ruppe wrote:
> One thing I actually *like* about the change: I didn't force the linux console to use VGA text mode this time. I usually do because I adore the vga text mode, it is so beautiful and elegant.
>
> But one big advantage to letting new linux do its thing with the framebuffer console: switching VTs between it and X is *fast*. Like instant fast. I like that a lot.

Vasistas ?

(for these who don't get it: http://en.wiktionary.org/wiki/vasistas )