numonic 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (5) hide show
  1. data/LICENSE +22 -0
  2. data/README.md +80 -0
  3. data/bin/numonic +26 -0
  4. data/numonic.gemspec +16 -0
  5. metadata +51 -0
data/LICENSE ADDED
@@ -0,0 +1,22 @@
1
+ Copyright 2013 Dafydd Crosby (dafydd@dafyddcrosby.com)
2
+ All rights reserved.
3
+
4
+ Redistribution and use in source and binary forms, with or without
5
+ modification, are permitted provided that the following conditions are met:
6
+
7
+ 1. Redistributions of source code must retain the above copyright notice, this
8
+ list of conditions and the following disclaimer.
9
+ 2. Redistributions in binary form must reproduce the above copyright notice,
10
+ this list of conditions and the following disclaimer in the documentation
11
+ and/or other materials provided with the distribution.
12
+
13
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
14
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
16
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
17
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
19
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
20
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
21
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
22
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
@@ -0,0 +1,80 @@
1
+ # Numonic
2
+
3
+ The human brain has trouble remembering long numbers. Take for example:
4
+
5
+ 9285 9495 3463 8841
6
+
7
+ Not very easy to remember quickly, is it? But how about the phrase:
8
+
9
+ painful purple marjoram favorite
10
+
11
+ Nonsensical, but still easier to remember. As you might be guessing now, there
12
+ is a system that turns numbers into mnemonics so that you can remember phone
13
+ numbers, credit card numbers, and any other long number sequence you would
14
+ like to remember.
15
+
16
+ ## System
17
+
18
+ The trick is to break the number apart into consonants, and then make words
19
+ out of the consonants. If you slowly talk out the words, you'll find that
20
+ the sibling consonants for a number have a same 'mouth-feel' to them
21
+ (if you've ever studied lip-reading, you'll catch on right away!)
22
+
23
+ 0 - z, s, and soft c
24
+ 1 - t, d
25
+ 2 - n
26
+ 3 - m
27
+ 4 - r
28
+ 5 - l
29
+ 6 - j, sh, ch, g
30
+ 7 - k, hard c, hard g
31
+ 8 - f, v, ph
32
+ 9 - p, b
33
+
34
+ * vowels have no value ('onomatopoeia' == 2319)
35
+ * silent letters are discarded ('sign' == 02, not 062)
36
+ * w, h, and y have no value ('widely' == 15, 'whirlybird' == 45941)
37
+ * double letters count as one ('sally' == 05, not 055)
38
+
39
+ You can turn these words into phrases, so that the first 10 digits of pi
40
+ can be remembered as:
41
+
42
+ Mutter tulip Nietzche lame
43
+
44
+ ## Installation
45
+
46
+ `gem install numonic`
47
+
48
+ ## Using numonic
49
+
50
+ Numonic helps you learn the system quickly, and can give you mnemonic
51
+ ideas easily. Say you really want to remember your friend Jenny's number.
52
+ Just type in:
53
+
54
+ `numonic 8675309`
55
+
56
+ And you get 'fjklmzp'. Start mouthing out the consonants, and you get
57
+ something like 'fudge kill maze pie'. Awesome! Serve me up a slice of that!
58
+
59
+ Have trouble remembering your license plate? Numonic simply keeps any letters
60
+ that you put in, so:
61
+
62
+ `numonic BDR-529`
63
+
64
+ becomes
65
+
66
+ bdr-lnp
67
+
68
+ which can be turned into
69
+
70
+ butter low nap
71
+
72
+ Got a really long list of numbers in a file? Numonic also accepts STDIN
73
+
74
+ `cat list_o_numbers.txt | numonic`
75
+
76
+ As you might imagine, having a strong vocabulary can help you come up with
77
+ really colorful phrases that make it easy to memorize long numbers.
78
+
79
+ Further reading:
80
+ "The Memory Book" by Harry Lorayne & Jerry Lucas
@@ -0,0 +1,26 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ numonics = {
4
+ '0' => 'z',
5
+ '1' => 't',
6
+ '2' => 'n',
7
+ '3' => 'm',
8
+ '4' => 'r',
9
+ '5' => 'l',
10
+ '6' => 'j',
11
+ '7' => 'k',
12
+ '8' => 'f',
13
+ '9' => 'p',
14
+ }
15
+
16
+ unless ARGV.empty?
17
+ num = ARGF.argv.join(" ")
18
+ else
19
+ num = ARGF.read.chomp
20
+ end
21
+
22
+ num.to_s.split('').each { |d|
23
+ print numonics.include?(d) ? numonics[d] : d
24
+ }
25
+ puts ""
26
+ STDOUT.flush
@@ -0,0 +1,16 @@
1
+ # -*- encoding: utf-8 -*-
2
+ Gem::Specification.new do |gem|
3
+ gem.name = "numonic"
4
+ gem.authors = ["Dafydd Crosby"]
5
+ gem.description = %q{Easily memorize long numbers using mnemonics}
6
+ gem.summary = %q{Numonic translates numbers into consonants so that you can make phrases to remember them}
7
+
8
+ gem.email = "dafydd@dafyddcrosby.com"
9
+ gem.homepage = "https://github.com/dafyddcrosby/numonic"
10
+
11
+ gem.license = 'bsd' # The (three-clause) BSD License
12
+
13
+ gem.files = `git ls-files`.split($\)
14
+ gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
15
+ gem.version = "0.0.1"
16
+ end
metadata ADDED
@@ -0,0 +1,51 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: numonic
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Dafydd Crosby
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2013-10-09 00:00:00.000000000 Z
13
+ dependencies: []
14
+ description: Easily memorize long numbers using mnemonics
15
+ email: dafydd@dafyddcrosby.com
16
+ executables:
17
+ - numonic
18
+ extensions: []
19
+ extra_rdoc_files: []
20
+ files:
21
+ - LICENSE
22
+ - README.md
23
+ - bin/numonic
24
+ - numonic.gemspec
25
+ homepage: https://github.com/dafyddcrosby/numonic
26
+ licenses:
27
+ - bsd
28
+ post_install_message:
29
+ rdoc_options: []
30
+ require_paths:
31
+ - lib
32
+ required_ruby_version: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
38
+ required_rubygems_version: !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ! '>='
42
+ - !ruby/object:Gem::Version
43
+ version: '0'
44
+ requirements: []
45
+ rubyforge_project:
46
+ rubygems_version: 1.8.24
47
+ signing_key:
48
+ specification_version: 3
49
+ summary: Numonic translates numbers into consonants so that you can make phrases to
50
+ remember them
51
+ test_files: []