Skip to content

Instantly share code, notes, and snippets.

@localshred
Created September 13, 2012 23:26
Show Gist options
  • Save localshred/3718561 to your computer and use it in GitHub Desktop.
Save localshred/3718561 to your computer and use it in GitHub Desktop.
Weighted, sorted scores for finovate grades (seen at http://bankinnovation.net/2012/09/finovate-fall-2012-demo-performance-scores-and-reviews/). MoneyDesktop just shy of top score! And yes, I work for MD (full disclosure).
# Columns: Score, Coolness, Want, Profit, Name
11.25 A- A- A- Mortgage Harmony
11.00 A A B MoneyDesktop
10.75 A- B+ A- Backbase
10.50 B+ A B+ Credit Sesame
10.25 A- A- B- Playmoolah
10.25 A- B+ B+ PayTap
10.25 A A C+ Dashlane
10.00 B+ B- A Currency Cloud
10.00 B+ A B- Deluxe SwitchAgent
9.75 B+ B+ B+ Bolstr
9.50 B+ B B+ LearnVest
9.25 B+ A- C+ ImpulseSave
9.25 B+ B+ B- CommunityLend
9.25 B+ B B Virtual Piggy
9.25 B+ B- B+ Locaid Instant Locate
9.25 B+ B- B+ Dynamics
9.00 B B B Payfone
9.00 B B B PaySimple
9.00 B B B Emida CAT Mobile Wallet
9.00 B- B+ B Personal Capital
8.75 B B- B Billhighway
8.75 B- B B IDology
8.75 B- B- B+ Ignite Sales
8.75 B+ B+ C+ Tuiton.io
8.75 B+ B- B- IND Group (Story of My Finances)
8.50 B- B- B Experian
8.25 B C+ B Cachet Financial Solutions
8.00 B C B ValidSoft
7.75 B- B- C+ TouMetis
7.50 C+ C+ B Pindrop Security
7.25 B- C+ C+ Blackhawk Network
7.25 C+ C+ B- Luminous Bankfiling
7.25 B- C+ C+ Yodlee
7.25 C+ B- C+ Banno Grip
7.25 C+ C+ B- MasterCard
7.00 B C C Compass Plus
7.00 B C C IBSS
6.75 C+ C+ C+ LeadFusion
6.75 C+ C+ C+ Fiserv
6.75 C+ C+ C+ Choice Direct
6.25 C C+ C Finovera
6.25 C C C+ Carta Worldwide
6.25 C C C+ Prepaid Resources Direct Deposit Management
6.00 C C C Handpoint
6.00 C C C Digital Mailer, My Virtual Strongbox
require 'csv'
data = %q{"Choice Direct",C+,C+,C+
LearnVest,B+,B,B+
IBSS,B,C,C
Playmoolah,A-,A-,B-
Billhighway,B,B-,B
"Ignite Sales",B-,B-,B+
Finovera ,C,C+,C
"Carta Worldwide",C,C,C+
Handpoint,C,C,C
MasterCard,C+,C+,B-
"Currency Cloud",B+,B-,A
"Compass Plus",B,C,C
Dashlane,A,A,C+
"Personal Capital",B-,B+,B
MoneyDesktop,A,A,B
"Blackhawk Network",B-,C+,C+
Experian,B-,B-,B
Yodlee,B-,C+,C+
"Virtual Piggy",B+,B,B
Dynamics,B+,B-,B+
"Deluxe SwitchAgent",B+,A,B-
IDology,B-,B,B
"IND Group (Story of My Finances)",B+,B-,B-
ImpulseSave,B+,A-,C+
"Locaid Instant Locate",B+,B-,B+
"Cachet Financial Solutions",B,C+,B
"Luminous Bankfiling",C+,C+,B-
"Digital Mailer, My Virtual Strongbox",C,C,C
"Credit Sesame",B+,A,B+
"Banno Grip",C+,B-,C+
"Mortgage Harmony",A-,A-,A-
Backbase,A-,B+,A-
"Pindrop Security",C+,C+,B
Bolstr,B+,B+,B+
Fiserv,C+,C+,C+
CommunityLend,B+,B+,B-
"Emida CAT Mobile Wallet",B,B,B
Tuiton.io,B+,B+,C+
TouMetis,B-,B-,C+
PaySimple,B,B,B
ValidSoft,B,C,B
LeadFusion,C+,C+,C+
"Prepaid Resources Direct Deposit Management",C,C,C+
Payfone,B,B,B
PayTap,A-,B+,B+}
A = 4
B = 3
C = 2
D = 1
F = 0
def score(*grades)
running = 0
grades.each do |grade|
running += Kernel.const_get(grade[0])
running += 0.25 if grade[1] == '+'
running -= 0.25 if grade[1] == '-'
end
running
end
Company = Struct.new(:name, :coolness, :want, :profit, :total)
companies = []
CSV.parse(data) do |line|
grade = score(line[1], line[2], line[3])
companies << Company.new(line[0], line[1], line[2], line[3], grade)
end
companies.sort {|a,b| b.total <=> a.total }.each do |company|
puts '%5.2f %-3s %-3s %-3s %s' % [company.total.to_f, company.coolness, company.want, company.profit, company.name]
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment