Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 11 years ago.
Improve this question
Since the keyboard is the interface we use to the computer, I've always thought touch typing should be something I should learn, but I've always been, well, lazy is the word. So, anyone recommend any good touch typing software?
It's easy enough to google, but I'ld like to hear recommendations.
Typing of the Dead!
It's a good few years old so you may have to hunt around, but it's a lot of fun and as well as the main game there are numerous minigames to practice specific areas you may be weak on.
I trained my typing on GNU Typist. It comes with exercises for various languages and keyboard layouts, if you're so inclined.
One of the most fun typing programs I used is dvorak7min. It has a nastiness mode where for each typo you make, the cursor goes back by 1. So if you don't watch your typing, you'll be back to square 1….
If you want some motivation to learn to touch type read Steve Yegge's Blog rant:
Programming's Dirtiest Little Secret
Find a long document on the web, using Firefox
Press CTRL+F
Type along with the document. Try it, it works.
Mavis Beacon.
Although not nearly as fun as Typing of the Dead!
I've been touchtyping since I was 10 years old (on a real typewriter at that!) but one thing that helped my sister learn touchtyping is hanging out in IRC channels. You want to be able to "talk" as fast as you can speak and that trained her in typing a lot faster.
I know it's a lame answer and not really a software solution or what, but it worked for a lot of people I know. :)
Try http://keybr.com/? It is a little different from the usual format of free typing tutors. If you create an account, it keeps track of your progress as well. No add-ware and no pop-ups, or other useless junk.
If you want to learn by getting thrown in the deep end... DasKeyboard ultimate will have you touch typing in no time :)
I use Rapid Typing to learn touch typing. It has excellent visuals and it's even somewhat relaxing to type.
About the recommendation to use the DasKeyboard, I just started using one today! But be aware that it makes a lot of noise. I was mortified how much noise it was making in my super quiet office filled with other people, who are engineers but mostly not developers. I asked the person across from me if it was too noisy. She hesitated for a fraction of a second before insisting it was fine, and when I said I would put it away she barely protested. So I packed it up. Maybe if you are just surrounded by other devs it would be OK. I'd love to hear of contrary experiences. I'm banging away from home right now though, as loud as possible, and loving it!
Oh, and you will definitely learn to touch type! Right now I have a picture of a labeled keyboard as my desktop image, but am referring to it less and less.
Mike
I have a really weird habitual way of typing where I use several fingers on my left hand but only one or two on the right. This has served me for years and apparently gives me 80+ words per minute, but it does seem an incredibly weird way to type. This is touch typing but not using the "standard" finger arrangement. While it's probably not a great idea to try and fix something that already works, I thought I'd try and relearn to type the proper way (left fingers on asdf and right fingers on jkl;).
I've been trying out Mavis Beacon and it seems alright, it slowly adds more and more letters to your repertoire allowing you to gain the muscle memory or whatever, and then focuses on speed. The "games" seem a little pointless (is this program designed for kids?), but I guess for someone who doesn't know where the keys are it does a good job showing you which fingers to use and where to move them. As I already knew where the keys are most of the program didn't really aid me. Once you know where the keys are you probably just want to practice typing out text and a program like that won't really aid any more than notepad apart from counting your words per minute and giving you something to type. I agree with Typing of the dead being pretty awesome though, and will definitely help with your speed once you've got the finger arrangement down.
Do all you touch typers use the standard finger arrangement or do you just do your own thing? I think I've come to the conclusion I'll just stick with what I know, it seems to work anyway.
For the sake of completeness, my wife used KP Typing Tutor, worked great.
+1 on chatting more
I used the TTCoach plugin for Vim and have been very happy with it. It doesnt come with any exercises for numbers and symbols however, but it is easy to just make some text files yourself and write :TTCustom file.txt to use it for exercising.
Just learn a couple of characters at a time and when you got them nailed, learn a couple more and so on...
I've been using TypeFaster. It's not pretty, but one nice feature is that it can load lessons in different keyboard layouts, like Colemak (layout files here) or Dvorak.
Related
I have been investigation a little about image recognition, But Haven't found something useful for me yet.
For my Wife who Is a Dentist that has to make his Tesis, I need to make an App that recognize all teeth Shape from a picture taken at standard conditions.
I need to find the best match based on teeth pattern predefined to categorize and see which match best. I know this is a big issue and not a simple solution.
Does someone know an image recognition software that makes me able to give it a a number of patterns, and then have an image and see wich pattern fits the best? Or maybe just some orientation to start searching and working on solving this problem.
Thanks!
OpenCV would be the way to go here but let me give you the facts before you start ripping your hair out.
I don't know your development experience but although OpenCV has an iOS wrapper you will be working with low-level, C libraries. If that makes you uncomfortable then turn back now. Furthermore, you will be writing the majority of the recognition/detection algorithms yourself and it takes a lot of time and patience to get these to the point where they work to an extent. Additionally, don't expect the end product to be all that reliable, professional image recognition/manipulation tools take years of development by teams of experts in computer vision. No disrespect but something that has been hacked together over a few weeks by one person will be sub-par and lacking.
Nonetheless if you want to go ahead, you can download OpenCV for iOS here:
http://docs.opencv.org/2.4/doc/tutorials/introduction/ios_install/ios_install.html
I want to add Autocorrection and Suggestion to my custom keyboard.
There are already several similar questions on Stack, but there is only said about UILexicon which as I understood is only used to get user's shortcuts and that there is no way to acces Apple Autocorrection and Suggestion library.
I also saw some questions regarding UITextChecker but don't know if it has an access to Apple's native sugesstion library?
May be there are some new classes for that?
I use four different systems for my keyboard:
I have a list of the top 30,000 or so words, ranked in order of the most used to the least used. You can pay for lists, I just got a free one of about 42,000 and edited it down a lot.
guessesForWordRange is provided by Apple. It will guess words that are close to what you have typed. It does a fairly good job, but I had to filter out some things. The top guess sometimes has quotation marks around it, but other then that it works great.
completionsForPartialWordRange is also provided by Apple. It will return completed words, but in alphabetical order, not ranked by usage. Not much good on it's own, but is a great supplement to 1 and 2. (if this worked correctly #1 wouldn't be needed)
Special cases. Mainly for contractions. When someone types didnt, I wanted it to auto choose didn't. So I have almost all contractions specifically programmed in.
So my word suggestions and autocorrection aren't perfect, but it does a decent job.
Hope this helps.
Edit: As of iOS 16 it seems completionsForPartialWordRange is working correctly, so having your own list of words shouldn't be needed anymore.
Sorry for the generalized question...I have been hunting for a long time and haven't found anything I can use or easily adapt yet. I'd really appreciate any pointers!
I'm building a reference app that will contain several textbooks in plain-text format. I want the user to be able to perform a search, and get a table back with a list of results. I have a working prototype, but the search logic that I wrote isn't all that smart and it's been hell trying to make it better.
This is obviously a fairly common problem so I'm looking for a tool that I could adapt to the task. So far I've found Lucene (http://vafer.org/blog/20090107014544/) and Locayta (http://www.locayta.com/iOS-search-engine/locayta-search-mobile/)
Lucene appears to have been last updated for iOS 2...I don't even know if I'll be able to rework it myself. Maybe.
Locayta would probably work great, but a commercial license is $1,000 and I may not soon recoup that with this app, as it's a niche market.
Thanks!
We stumbled upon the same predicament where I work, and have yet to decide on a solution.
Locayta seems promising, but barring that, I've looked into SQLite's FTS3/FTS4 as well.
The only issue seemed the lack of a way to match partial words. It's easy to search for fields that contain whole words (eg. "paper" matches "printer paper", "paper punch", and "sketch paper"), or words that start with something (eg. "bi*" matches "binder", and "bicycle"), but there's no built in way to match a suffix.
If you don't require that functionality, FTS3/FTS4 might work.
I see you mentioned in the follow-up that your SQLite didn't recognize FTS3(), and I had the same issue at first.
Apparently it's not bundled into the iOS version by default, instead you have to download the SQLite3 amalgamation, and include it in the project manually. As found at is FTS available in the iOS build of SQLite?
Also note, the SQLITE_ENABLE_FTS3 variable is not enabled by default, you just have to add it to the configuration as detailed at http://www.sqlite.org/fts3.html#section_2
Hope this helps.
If you can translate plain C code to iOS Objective-C, then Apache Lucy (a loose "C" port of Lucene) might be worth a look.
I am searching for an algorithm to determine whether realtime audio input matches one of 144 given (and comfortably distinct) phoneme-pairs.
Preferably the lowest level that does the job.
I'm developing radical / experimental musical training software for iPhone / iPad.
My musical system comprises 12 consonant phonemes and 12 vowel phonemes, demonstrated here. That makes 144 possible phoneme pairs. The student has to sing the correct phoneme pair 'laa duu bee' etc in response to visual stimulus.
I have done a lot of research into this, it looks like my best bet may be to use one of the iOS Sphinx wrappers ( iPhone App › Add voice recognition? is the best source of information I have found ). However, I can't see how I would adapt such a package, can anyone with experience using one of these technologies give a basic rundown of the steps that would be required?
Would training be necessary by the user? I would have thought not, as it is such an elementary task, compared with full language models of thousands of words and far greater and more subtle phoneme base. However, it would be acceptable (not ideal) to have the user train 12 phoneme pairs: { consonant1+vowel1, consonant2+vowel2, ..., consonant12+vowel12 }. The full 144 would be too burdensome.
Is there a simpler approach? I feel like using a fully featured continuous speech recogniser is using a sledgehammer to crack a nut. It would be far more elegant to use the minimum technology that would solve the problem.
So really I'm hunting for any open source software that recognises phonemes.
PS I need a solution which runs pretty much real-time. so even as they are singing the note, firstly it blinks on to illustrate that it picked up the phoneme pair that was sung, and then it glows to illustrate whether they are singing the correct note pitch
If you are looking for a phone-level open source recogniser, then I would recommend HTK. Very good documentation is available with this tool in the form of the HTK Book. It also contains an entire chapter dedicated to building a phone level real-time speech recogniser. From your problem statement above, it seems to me like you might be able to re-work that example into your own solution. Possible pitfalls:
Since you want to do a phone level recogniser, the data needed to train the phone models would be very high. Also, your training database should be balanced in terms of distribution of the phones.
Building a speaker-independent system would require data from more than one speaker. And lots of that too.
Since this is open-source, you should also check into the licensing info for any additional details about shipping the code. A good alternative would be to use the on-phone recorder and then have the recorded waveform sent over a data channel to a server for the recognition, pretty much something like what google does.
I have a little bit of experience with this type of signal processing, and I would say that this is probably not the type of finite question that can be answered definitively.
One thing worth noting is that although you may restrict the phonemes you are interested in, the possibility space remains the same (i.e. infinite-ish). User training might help the algorithms along a bit, but useful training takes quite a bit of time and it seems you are averse to too much of that.
Using Sphinx is probably a great start on this problem. I haven't gotten very far in the library myself, but my guess is that you'll be working with its source code yourself to get exactly what you want. (Hooray for open source!)
...using a sledgehammer to crack a nut.
I wouldn't label your problem a nut, I'd say it's more like a beast. It may be a different beast than natural language speech recognition, but it is still a beast.
All the best with your problem solving.
Not sure if this would help: check out OpenEars' LanguageModelGenerator. OpenEars uses Sphinx and other libraries.
http://www.hfink.eu/matchbox
This page links to both YouTube video demo and github source.
I'm guessing it would still be a lot of work to mould it into the shape I'm after, but is also definitely does do a lot of the work.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 8 years ago.
Improve this question
We are working on a hiring application and need the ability to easily parse resumes. Before trying to build one, was wondering what resume parsing tools are available out there and what is the best one, in your opinion? We need to be able to parse both Word and TXT files.
I suggest looking at some AI tools. Three that I'm aware of are
ALEX
Sovren
Resume Mirror
I think all the products handle Word, txt, and pdf along with a bunch of other document types. Although I've never used it, I've heard unfavorable things about Resume Mirror's accuracy and customer support. I'm a contract recruiter and have used both Sovren's and Hireability's parsers in different ATS's. From my view I thought Hireability did a better job, with Sovren it seemed like I was always fixing errors. And when there was a goof with Hire's I gave it to my ATS vendor and it seemed like it was fixed pretty quickly. Good luck.
Don't try to build one unless you want to dedicate your life to it. Don't re-invent wheels!
We build and sell a recruitment system. I did a long evaluation a few years ago and went for Daxtra - the other one in the frame was Burning Glass but I got the impression that Daxtra did non-US resumes better.
Anyway, we're re-evaluating it. Some parts it does brilliantly (name, address, phone numbers, work history) as long as the resume is culturally OK. But if it's not then it fails. What do I mean: Well, if the resume has as the first line:
Name: Sun Yat Sen
then Daxtra is smart enough to figure out that Sun Yat Sen is the guy's name. (Girl's?)
But if it has as the first line:
Sun Yat Sen
It can't figure it out.
On the other hand if the first line is
Johnny Rotten
then Daxtra works out his name.
Also, it works really well on UK addresses, fairly well on Australian addresses, crashes and burns on Indonesian addresses. That said, we've just parsed 35,000 Indonesian resumes relatively well - CERTAINLY far better than not doing it at all, or doing it manually!
On Skilling: I reckon if someone really tried to make the Skills section work then it would take 3 man-months or so and it would work really well.
Summary: Don't write it yourself, do some really good research on real resumes that you want parsing and dive in.
The key thing is: Don't expect any tool to be anywhere near 100% accurate - but it's a lot better than not having it.
Neil
FWIW I just ran 650 international resumes through Rchilli and found the accuracy to be very poor. Names & addresses were mangled and the detail fields were hit and miss.
This was a mix of pdfs & Word docs, primarily from Europe & Asia.
I have seen a lot of resumes in PDF format. Are you sure you don't care about them?
I'd recommend something simple:
Download google desktop search or
similar tool (i.e. Copernic)
Drop the files in a directory
Point the index tool to that
directory, and punch in your search
terms.
You may want to have a look at egrabber and rchilli these are two best tools out in the market.
I was wondering if any one update these list. Seems all are 2010 old almost 3 yrs old.
We integrated RChilli, and found them no flaw, support is best, and product is easier to use.
We tested RChilli, Hireability, and Daxtra. Sovren never responded to our emails.
Integration was smooth, and support is best in there.