• You are not logged in.

New Typing Program

  • Started by tristesse
  • 36 Replies:
  • Reputation: 0
  • From: Oslo, Norway
  • Registered: 21-Dec-2008
  • Posts: 12

Hi all.

I wrote a new typing program a couple of days ago. Today I finally got around to uploading it to Google Code and such. I personally think it's better than all the alternatives I've used at this point, but that's a tad biased of course. Although I hope others can enjoy it the same way. :) Think of it kinda like an offline typeracer.com but with crazy amount of statistics and some automatic lesson generation facilities, etc. You can even get a novel off Gutenberg and choose to type the entire novel in order, session by session, while you read it. :)

Screenshots (a thousand words and all that): https://code.google.com/p/amphetype/wiki/Screenshots

Backstory (could be read as my Colemak experience report): https://code.google.com/p/amphetype/wiki/Backstory

Google Code: https://code.google.com/p/amphetype/ (for linux users: checkout with subversion)
Note the Windows exe on there isn't the newest, I forgot a couple of minor bugs and haven't bothered to upload a new one. The newest version is on http://racetam.com/tris/Typer/Amphetype-0.11.rar

I apologize for the huge huge size of the Windows download. I plan to cut it down to 7-8MB next release when I write my own graph-plotting routine and stop using matplotlib.

Offline
  • 0
  • Reputation: 214
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,364

Hello there, my fellow Norwegian!  :)

Looks like you've done a lot of work there. I'll have a look; I like the idea of "reading books with my fingers".

First impression:
- I do NOT like having to press Space to start typing each page. This disrupts the flow of my "reading". Most other typing programs I've used allowed you to just start typing the page - at least on subsequent pages.
- Can you turn off the conditions for not repeating a lesson? I got the title page of a book over and over before I understood what was going on. If I want to just type and not mind speed/accuracy, is the only way to do that to enter zeros in the demand boxes?
- I couldn't figure out how to easily disable a text? (Other than using a regexp, which I don't consider easy.)
- There were a few typos in the default text. Nothing major.

Last edited by DreymaR (22-Dec-2008 01:10:19)

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0
  • Reputation: 0
  • From: Oslo, Norway
  • Registered: 21-Dec-2008
  • Posts: 12
DreymaR said:

Hello there, my fellow Norwegian!  :)

Hi.

First impression:
- I do NOT like having to press Space to start typing each page. This disrupts the flow of my "reading". Most other typing programs I've used allowed you to just start typing the page - at least on subsequent pages.

I feel your pain, my brother. However then I lose an entire word's worth of statistics and the statistics is one of things I'm most concerned about. Without some kind of key to "start the clock", I don't really know how fast you typed the first character, nor can I know how fast you typed the first word, nor the first trigram, so everything has to be thrown away there, which I felt "sullied" the stats-collecting routine. :( And I am too anal to just wing it by putting in a fake number. It is my sincere hope that the user will get used to it and incorporate it into the "flow" as I have. :) I could make the key customizable though if enter or something would be better?

- Can you turn off the conditions for not repeating a lesson? I got the title page of a book over and over before I understood what was going on. If I want to just type and not mind speed/accuracy, is the only way to do that to enter zeros in the demand boxes?

Yes, sure. I'd say that is how you turn off the repetitions. :) I mean I could make a separate checkbox somewhere, but in my mind it would be redundant.

I know it's lacking some in user friendliness and intuitiveness... I guess I can make 0 for the boxes the default.

- I couldn't figure out how to easily disable a text? (Other than using a regexp, which I don't consider easy.)

You can just find it in the list under sources, select it and click toggle disable (with the regex box in its default empty state -- which will match everything anyway). If there ought to be an even easier way than that then I don't know what you mean.

- There were a few typos in the default text. Nothing major.

Yeah, I know.  I forgot to care about stuff like that before I just rushed it out. Sometimes I refer to texts as lessons and sometimes as texts, too. (However they are meant to be separate in the database. Lessons are only those texts generated by the lesson generator. Or fragments, whatever. I guess I need some help documents.)

Offline
  • 0
  • Reputation: 214
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,364

Could you accept just losing the first key press per page and keep the rest? That isn't much of a loss. The first word (and trigram?) would be easily approximated by using the average speed of the other letters in it as the speed of the first letter; that ought to be acceptable. This would only be necessary in first words that don't start with a capital letter, for which you'd let the Shift key register the start of typing. It is my impression that most statistics collectors throw away much more information than that anyway! Keep in mind that with typing you tend you generate a generous amount of data over a couple of days so it's not as if there is a dearth of information to work on.

I'm afraid I find myself rather unwilling to get used to a routine of pressing Space to start each and every page of a long text. I actually think that this little annoyance could put me off your program in the long run, since it happens so frequently. This is in my view a typical example of a common problem in program design: The creator (and possibly many of the seasoned beta testers too) is quite willing to make an effort to work around the program's small quirks, but these become a problem for the first time user evaluating the program before that user has become 'loyal' to the program.

All in all, it's not so much that it lacks user friendliness I think, but it isn't quite intuitive yet. The thing with the zeros in the demand boxes and using the regexp button but leaving the regexp field empty were two things that aren't hard to use but at a first glance I understood neither. And I am a 'schmot guy' so if it's easily understandable I tend to understand it.  ;)

Maybe you could entitle the disable button simply 'Disable selection' (if enabled; 'Enable selection' if disabled), and then the regexp field 'Optional regular expression for disable/enable'? If nothing were selected the button could be named just 'Toggle Disable' and when something were selected it would change name. Not sure how to optimize for intuitivity; the regexp is a nice touch but a complex concept for many users...

Indeed, it took a little to figure out what you meant by 'texts' versus 'lessons' but that wasn't a problem. When you mature the program a bit more you may have a tutorial or a setup session.

Hey - did you see the TypOMeter stat collector also made in Norway? I used it for a while and it's good fun. Maybe you'll make your own "Satellite" prog too since you're so good at this?  ;)
http://www.informatics.no/progvareTMLoc.htm

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0
  • Reputation: 0
  • From: Oslo, Norway
  • Registered: 21-Dec-2008
  • Posts: 12
DreymaR said:

Could you accept just losing the first key press per page and keep the rest? That isn't much of a loss. The first word (and trigram?) would be easily approximated by using the average speed of the other letters in it as the speed of the first letter; that ought to be acceptable. This would only be necessary in first words that don't start with a capital letter, for which you'd let the Shift key register the start of typing. It is my impression that most statistics collectors throw away much more information than that anyway! Keep in mind that with typing you tend you generate a generous amount of data over a couple of days so it's not as if there is a dearth of information to work on.

I'm afraid I find myself rather unwilling to get used to a routine of pressing Space to start each and every page of a long text. I actually think that this little annoyance could put me off your program in the long run, since it happens so frequently. This is in my view a typical example of a common problem in program design: The creator (and possibly many of the seasoned beta testers too) is quite willing to make an effort to work around the program's small quirks, but these become a problem for the first time user evaluating the program before that user has become 'loyal' to the program.

OK, OK, I made it optional.

But first off I think your "typical example" is a bit of a generalization although I caused that myself I guess: when I said I felt your pain I was more showing empathy than I was actually being in the same situation, because for me it has never been a quirk or an annoyance at all. I use this program like Typeracer.com. I don't seek to write serial texts at a leisurely, continuous rate, (I added the serial text feature fos a friend) I seek to race and go as fast as I can go, and at first I thought nothing of the space, it was something that followed naturally from the implementation, but later I have actually grown to like it as a sort of green light signal for my fingers. A dip before the sprint. (And space is a lot better than waiting 10 seconds on Typracer, which IS annoying.) I have never had anyone else comment on it either, though I guess you are like the third person to try this program, so 1 out of 3 is a pretty large chunk. << edit: Actually, strike that. I asked another guy who had tried it and he said he thought the space was odd, though he never voiced it before. :p Can't trust friends, it seems. >>

If you turn off the option it sets the time used for the first character to the time used the last time you were timed using that key. This should be natural enouth... (If this is the very first time you type the key, another approximation based on your average key-striking-pace is used.) As you suggest, this inaccuracy should get lost in the mountains of data to come and probably no one but me will be bothered by it. Problem is I am the wrong sort of idealist. The way my brain is wired I tend to choose the ideal of the numbers/mathematics of a programming issue instead of thinking about the lovable squishy meat popsicles commonly referred to as users. However I don't lose anything by making it optional and it wasn't too much of a hassle so that's what I've done.

I don't intercept shift keys since in the program I simply subclass a text box and track changes to it -- and shift doesn't do any changes. This is a conscious choice. I don't want to track shift, control, compose, altgr, etc. as then I would either have to mess with character composition or let go of keyboard agnosticism (what is shifted in one layout is composed on the next and a plain key on the third, etc). Second, I only want to care about the "end result". I mean maybe you have to press 3 physical keys to produce a "[" I don't want to have do deal with that, I just want to measure how fast you actually produce "["s.

'schmot guy'

GG reference? :)

Maybe you could entitle the disable button simply 'Disable selection' (if enabled; 'Enable selection' if disabled), and then the regexp field 'Optional regular expression for disable/enable'? If nothing were selected the button could be named just 'Toggle Disable' and when something were selected it would change name. Not sure how to optimize for intuitivity; the regexp is a nice touch but a complex concept for many users...

A redesign of the source tab has been at least several days coming! :) When that happens I'll probably do something wildly different, I don't know yet. I'll have to let my subconsciousness work on it. But I've been thinking of a sort of bastard union of Performance and Source where there is a "root" node and the sources underneath, and you get statistics and graphs when you click on the various items in the tree. Having several thousand items like that in a tree is quite slow in Python though, so I have to figure out how to make it faster.

I do like regexes though, as they give unprecedented power to the users who knows them -- and in an ideal world (mine) everyone knows them! Maybe make a separate search/edit tab for finding and editing texts/lessons, I don't know. All I have are ideas.

Indeed, it took a little to figure out what you meant by 'texts' versus 'lessons' but that wasn't a problem. When you mature the program a bit more you may have a tutorial or a setup session.

Hey - did you see the TypOMeter stat collector also made in Norway? I used it for a while and it's good fun. Maybe you'll make your own "Satellite" prog too since you're so good at this?  ;)
http://www.informatics.no/progvareTMLoc.htm

Nope I haven't seen it. That's interesting, but doesn't give you word-stats, which is primarily what I wanted. I've sensed that there are a lot of left-handed-ish words (like "was" "wharf" "quaff" "war" "raster" etc) that kill me on Colemak when I try to go fast (I make the most mistakes and I am slowest with my left hand) and I wanted to identify them so I could train myself. However, a general key-logger that gives typing stats for all user programs is not something I have planned as it differs from Xlib to Windows to OSX to ...

<< edit: forgot to say, I uploaded it here this time: https://code.google.com/p/amphetype/downloads/list >>

Last edited by tristesse (22-Dec-2008 17:27:36)
Offline
  • 0
  • Reputation: 0
  • Registered: 27-Apr-2008
  • Posts: 166

tristesse: Great program. Just having a play now. This could well replace klavaro as my favourite typing program. Many thanks.

Edit: one small suggestion so far: Can you display the speed on the 'Typer' tab after completing a text, rather than having to click on to the 'Performance' tab?

Edit 2: Do you use five characters as being a word?

Last edited by simonh (22-Dec-2008 18:13:47)

"It is an undoubted truth, that the less one has to do, the less time one finds to do it in." - Earl of Chesterfield

Offline
  • 0
  • Reputation: 0
  • From: Oslo, Norway
  • Registered: 21-Dec-2008
  • Posts: 12
simonh said:

tristesse: Great program. Just having a play now. This could well replace klavaro as my favourite typing program. Many thanks.

No, thank you. Makes me feel all kinds of warm and fuzzy.

Edit: one small suggestion so far: Can you display the speed on the 'Typer' tab after completing a text, rather than having to click on to the 'Performance' tab?

Yes, I've had this idea myself. Might make it an option at sometime. As well as make it an option to display "live" statistics of your current session, though I guess this can be distracting if made too blingy.

Anyway, you guys are free to suggest features at https://code.google.com/p/amphetype/issues/entry -- this way I have an easy overview and won't have to rely on my memory :)

Edit 2: Do you use five characters as being a word?

Yeah.

wpm = 12.0*chars/secs

For the word/key/trigram stats I store the actual timings (otherwise I couldn't calculate averages on them in a sane manner), but display them as WPM cause it's easier for people to relate to that than "113ms", even though it doesn't make much sense that I type "n" at 150wpm. ;)

Offline
  • 0
  • Reputation: 0
  • Registered: 17-Mar-2008
  • Posts: 192

Great little program indeed. It's nice to type text from actual books; It's closer to real typing than most other programs I've tried.

I type about 5-10 wpm faster using this program than on the hi-games test which confirms my suspicion that hi-games is a little harsh (too many funny characters, too many hard words to be characteristic of "real" typing). Not that it matters as long as you keep comparisons within a single typing program.

Offline
  • 0
  • Reputation: 0
  • Registered: 27-Apr-2008
  • Posts: 166

Added a couple of ideas tristesse. The first one is me but the missus was signed in to Google.

"It is an undoubted truth, that the less one has to do, the less time one finds to do it in." - Earl of Chesterfield

Offline
  • 0
  • Reputation: 2
  • From: Houston, Texas
  • Registered: 03-Jan-2007
  • Posts: 358

any chance of this running natively on OS X  ?

sounds good,  just don't need another Windows typing program running in simulation.

Offline
  • 0
  • Reputation: 0
  • From: Oslo, Norway
  • Registered: 21-Dec-2008
  • Posts: 12
simonh said:

Added a couple of ideas tristesse.

Thanks. Now it almost look like a real project. :)

keyboard samurai said:

any chance of this running natively on OS X  ?

sounds good,  just don't need another Windows typing program running in simulation.

Qt runs on OS X so the program should run on OS X... As long as you can install Python (2.5) PyQt4 (Qt 4.3+?) and matplotlib (though this won't be necessary for the next version I'm planning), then you should be able to run it just fine? But I have never touched an OS X and unless I get access to one in the near future (unlikely) or someone else figures it out... then I dunno.

I mean, in principle I don't think there's anything stopping it from running on OS X, it's just that I know nothing about distributing to OS X.

Like last time I tried the sources on my Linux laptop that I left running back home (visiting my dad for christmas) it worked just fine.

Offline
  • 0
  • Reputation: 214
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,364
tristesse said:

1) I don't seek to write serial texts at a leisurely, continuous rate

2) The way my brain is wired I tend to choose the ideal of the numbers/mathematics of a programming issue

3)

'schmot guy'

GG reference? :)

4) I do like regexes though, as they give unprecedented power to the users who knows them

1) Indeed - the racing is all good. But since you did add this lovely type-your-books functionality it's already growing into a selling point for you it seems. Thanks for adding that, and the options to customize the experience. Nice.

2) If you can manage to think of statistics as fondly, you will have no problem once you calculate the standard error introduced and write it off against the compound s.e. of your estimates.  :)

3) My, but hyu ARE a schmot guy!

4) Mmm, regexes. And unprecedented power to the schmot guys. We like that!  :D  I was talking about, you know, hoi polloi. We still want them as users too I hope? And loyal subjects of the regex-wielding madboys...

Last edited by DreymaR (23-Dec-2008 00:29:21)

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0
  • Reputation: 2
  • From: Houston, Texas
  • Registered: 03-Jan-2007
  • Posts: 358

oh my god!    GG references!

Offline
  • 0
  • Reputation: 2
  • From: Houston, Texas
  • Registered: 03-Jan-2007
  • Posts: 358
tristesse said:
simonh said:

Added a couple of ideas tristesse.

Thanks. Now it almost look like a real project. :)

keyboard samurai said:

any chance of this running natively on OS X  ?

sounds good,  just don't need another Windows typing program running in simulation.

Qt runs on OS X so the program should run on OS X... As long as you can install Python (2.5) PyQt4 (Qt 4.3+?) and matplotlib (though this won't be necessary for the next version I'm planning), then you should be able to run it just fine? But I have never touched an OS X and unless I get access to one in the near future (unlikely) or someone else figures it out... then I dunno.

Well, I guess I will pass then.  Afraid I have too much on my plate to be playing around with something that doesn't contribute to the mortgage payment.  Can't afford to make another derivative tank. 

sounds nice though.

Offline
  • 0
  • Reputation: 0
  • Registered: 01-Jul-2008
  • Posts: 2

Would it be possible for you to distribute Amphetype as a zip archive in complement to (or instead of) the rar archive? It would make it easier for most people to try out the program, I think.

Offline
  • 0
  • Reputation: 214
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,364

I suggest getting the free 7zip or PeaZip (available as installs or portable apps!) - not only do they solve your .rar predicaments, but also any .gz or the increasingly popular .7z you may come across these days.

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0
  • Reputation: 214
  • From: Viken, Norway
  • Registered: 13-Dec-2006
  • Posts: 5,364
tristesse said:

you guys are free to suggest features at https://code.google.com/p/amphetype/issues/entry

Do you have to get a Google account for that to work?

I tried the no-Space-to-start approach and it worked great for me... until I reached the end of the page. It didn't proceed to the next page? This happened when I first unchecked the option and then imported and started a text. If I started typing a text with the option checked and then after the first page unchecked the option, it worked as it should and proceeded to the next page automatically, but then I ran into the same problem again after a while.

My Amphetype.exe.log file contained a couple hundred instances of this message:

Traceback (most recent call last):
  File "Quizzer.pyc", line 172, in done
  File "Quizzer.pyc", line 130, in getStats
TypeError: 'NoneType' object is unsubscriptable

The text pages are only a few lines long. Is there a way to make them as long as I want? I tried increasing the "try to limit texts and lessons..." option, and then re-importing a book, but this didn't seem to make a difference to the "lesson" lengths. I had done a few "lessons" on that book, and the statistics still showed when the book was deleted and then re-imported; maybe that is of significance?

Could you make the program count a single space as enough when the text contains a double space, or convert multiple spaces in the text to a single space? I ran afoul of a text that used double space after a period, which isn't typographically correct (I think?!); it took me a while and some cursing to figure out that I had to type a double space to proceed where I expected that a single space would be enough. That isn't your program's fault but the stupid text's, but if your program could smooth out that road bump it'd be nice.

The text box turns from white to black when an error is typed. That shocks me every time.  :)  Not sure whether a shock is beneficial to my progress or not, but maybe there should be a way to customize this? I'd like to be able to pick background and text colors, and then the background and text color for when mistyping occurs. That way I could for instance turn the text from blue to red while leaving the background color unchanged whenever an error was typed ("hi-games style"), if I preferred that. For me it would be quite acceptable to enter the colors as for instance #rrggbb values in input boxes, but I suppose that color picker modules are also readily available.

Maybe there could be a way to browse lessons while in the typer mode? Let's say I'm typing a book and want to skip a chapter or go back a chapter. I'd like arrow buttons at the top or something. If the chosen selection method is Random there could be only one button instead, maybe with an asterisk on it to signify refreshing/reselecting.

Last edited by DreymaR (24-Dec-2008 02:15:04)

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0
  • Reputation: 0
  • From: Oslo, Norway
  • Registered: 21-Dec-2008
  • Posts: 12
DreymaR said:
tristesse said:

you guys are free to suggest features at https://code.google.com/p/amphetype/issues/entry

Do you have to get a Google account for that to work?

I don't know, actually... But since you ask I can only guess that you don't have one and tried, but wasn't able to do anything without one.

I tried the no-Space-to-start approach and it worked great for me... until I reached the end of the page. It didn't proceed to the next page? This happened when I first unchecked the option and then imported and started a text. If I started typing a text with the option checked and then after the first page unchecked the option, it worked as it should and proceeded to the next page automatically, but then I ran into the same problem again after a while.

My Amphetype.exe.log file contained a couple hundred instances of this message:

Traceback (most recent call last):
  File "Quizzer.pyc", line 172, in done
  File "Quizzer.pyc", line 130, in getStats
TypeError: 'NoneType' object is unsubscriptable

I was able to reproduce it and it happens when you have never typed the letter that the text started with before. Fixed.

The text pages are only a few lines long. Is there a way to make them as long as I want? I tried increasing the "try to limit texts and lessons..." option, and then re-importing a book, but this didn't seem to make a difference to the "lesson" lengths. I had done a few "lessons" on that book, and the statistics still showed when the book was deleted and then re-imported; maybe that is of significance?

No, this was another bug. I fixed it now. The limits in the preferences were only respected by the lesson generator, not the text importer. I have made it respect the "minimum" limit. Making it respect the "maximum" will require a slight redesign. Per now it will keep adding full sentences to an excerpt until it exceeds the minimum, then stop. So the maximum is in theory the mimimum plus the longest sentence in the book.

Uploading a new version with these two bugs fixed to Google now.

Could you make the program count a single space as enough when the text contains a double space,

This is a kind of magic I want to avoid. In the future I might want to have users import lessons other than from books and novels, and so would want them to type it in *exactly* like they want it.

or convert multiple spaces in the text to a single space? I ran afoul of a text that used double space after a period, which isn't typographically correct (I think?!); it took me a while and some cursing to figure out that I had to type a double space to proceed where I expected that a single space would be enough. That isn't your program's fault but the stupid text's, but if your program could smooth out that road bump it'd be nice.

This one is more likely, but the way I see myself doing that is by having the user enter a series of regex-replacements to occur automatically as text is imported. Like filtering. (Making a grand special case for just the double-space is a bit of a hack.) However this is, as you'll agree, really the place of a text editor. But I'll think about it.

That said, many (esp. European) languages used to use double space between sentences (old English? new French?) as standard, and some of the Gutenberg books follow that pattern too. In most cases the double spaces are lost and you don't notice it because Amphetype splits all the texts into individual sentences and uses those as atoms (throwing the space between them out the window), but sometimes it is unable to detect the end of a sentence -- such as in your case -- probably because the sentence ended with something that looked like an abbreviation...

The text box turns from white to black when an error is typed. That shocks me every time.  :)  Not sure whether a shock is beneficial to my progress or not, but maybe there should be a way to customize this? I'd like to be able to pick background and text colors, and then the background and text color for when mistyping occurs. That way I could for instance turn the text from blue to red while leaving the background color unchanged whenever an error was typed ("hi-games style"), if I preferred that. For me it would be quite acceptable to enter the colors as for instance #rrggbb values in input boxes, but I suppose that color picker modules are also readily available.

I'll add it to the feature requests for you. :) Right now I'm working on making my own graphs though.

Maybe there could be a way to browse lessons while in the typer mode? Let's say I'm typing a book and want to skip a chapter or go back a chapter. I'd like arrow buttons at the top or something. If the chosen selection method is Random there could be only one button instead, maybe with an asterisk on it to signify refreshing/reselecting.

Hmm. Food for thought. I'll see about this too.

Offline
  • 0
  • Reputation: 0
  • Registered: 08-Mar-2008
  • Posts: 303

This looks like fun, but it's a .exe... is it available for Mac?

Offline
  • 0
  • Reputation: 0
  • From: Oslo, Norway
  • Registered: 21-Dec-2008
  • Posts: 12

Fixed some bugs and implemented last result shown in the Typer tab (simonh) and customizable colors (DreymaR).

Also tried making a self-extracting .exe so you don't even need to be able to unzip zip files. The size is a lot smaller cause I dropped matplotlib and wrote my own graph plotting code. I know it doesn't look crazy sexy at the moment, but I consides the trade-off good and it's something I'll fix later.

SpeedMorph said:

This looks like fun, but it's a .exe... is it available for Mac?

As I told keyboard samurai -- yes, in a way. If you know how to fiddle and make sure Python 2.5+ and PyQt4 is installed then you can simply pull the sources and run it. If not then I can't help you until someone gives me a computer with OS X. :(

Last edited by tristesse (25-Dec-2008 00:12:21)
Offline
  • 0
  • Reputation: 0
  • From: Oslo, Norway
  • Registered: 21-Dec-2008
  • Posts: 12

Smee again.

SpeedMorph & keyboard samurai -- someone contributed an OS X build on the project page, you can see if it works. :)

Offline
  • 0
  • Reputation: 2
  • From: Houston, Texas
  • Registered: 03-Jan-2007
  • Posts: 358

nice, it works.  Though you not knowing the "someone" made me a little nervous in downloading it. 

One book loaded but another text book from Project Gutenberg refuses to load.

I screwed up the first example because I didn't realize that it going black meant there was an typing error (started of at what I thought was the beginning but wasn't).    Now I have a huge viscosity number that is 3.6xe^16.  Would be nice to be able to remove that line, it messes up the graph.

nice program.

Offline
  • 0
  • Reputation: 0
  • From: Oslo, Norway
  • Registered: 21-Dec-2008
  • Posts: 12
keyboard samurai said:

nice, it works.  Though you not knowing the "someone" made me a little nervous in downloading it.

You don't know me either! ;) But glad it works.

One book loaded but another text book from Project Gutenberg refuses to load.

Which one? (And specifically, what encoding did you chose when you downloaded it..) Did it give an error message (or was there a *.log file in the directory after you closed the program)?

I screwed up the first example because I didn't realize that it going black meant there was an typing error (started of at what I thought was the beginning but wasn't).    Now I have a huge viscosity number that is 3.6xe^16.  Would be nice to be able to remove that line, it messes up the graph.

Hmm, yes, that's probably annoying. For now you only have two options:
a) You could find the *.db file in the amphetype directory and delete it, that clears ALL your stats and starts fresh. It will have the name of your username on the system probably.
b) Download sqlite3 client and open the .db file and remove whatever you fant manually from the database tables (in this case the "result" table)

Offline
  • 0
  • Reputation: 0
  • Registered: 27-Apr-2008
  • Posts: 166

I'm not entirely sure how, tristesse, but your program has bumped my speed up from ~55 to ~65wpm in a week and a half! I've never been *that* bothered about typing really fast, accuracy has always been my main focus. But still, thanks very much. I had been stuck on a plateau for many months.

Edit: False alarm. Speed is back to being as erratic as ever :(

Last edited by simonh (31-Dec-2008 16:49:23)

"It is an undoubted truth, that the less one has to do, the less time one finds to do it in." - Earl of Chesterfield

Offline
  • 0
  • Reputation: 0
  • Registered: 17-Mar-2008
  • Posts: 192

Occasionally there are some non-printable characters in the text that show up as [square]. When such a character occurs, it is nigh impossible to proceed with that piece of text. It might be prudent to filter() the text prior to it getting to the user.

Offline
  • 0