Go to file
2012-02-16 15:41:56 -08:00
lib Add some ac.* to known academic TLDs 2012-02-05 00:17:06 -08:00
test Rename test file 2012-02-05 00:19:50 -08:00
.document Initial commit to email. 2012-01-30 17:14:23 -08:00
.gitignore Initial commit to email. 2012-01-30 17:14:23 -08:00
.rbenv-version Initial commit 2012-01-30 20:01:16 -08:00
Gemfile Initial commit 2012-01-30 20:01:16 -08:00
Gemfile.lock Initial commit 2012-01-30 20:01:16 -08:00
LICENSE.txt Initial commit to email. 2012-01-30 17:14:23 -08:00
Rakefile Train-driven development 🚋 2012-02-04 14:49:09 -08:00
README.md Update README.md 2012-02-16 15:41:56 -08:00
swot.gemspec Regenerate gemspec for version 0.1.0 2012-02-05 00:20:47 -08:00
VERSION Version bump to 0.1.0 2012-01-30 20:04:07 -08:00

Swot allows you to identify whether a particular email address or domain is associated with an academic institution providing higher education in tertiary, quaternary or post-secondary education in any country in the world.

Why would you want to do that?

Student discounts baby. A growing number of companies offer discounts on their products/services to those in academia. It's not a hard problem to solve in America or the UK, but other countries don't have domain name restrictions.

Pop quiz

How many of the following email addresses are associated with a university? Answers at the bottom.

nigel@stanford.edu, bawbag@cs.strath.ac.uk, lee@wunizar.es, terrence@ubishops.ca, philip@usask.ca, hans@hil.no, mila@unze.ba

Usage

Verify Email Addresses

Swot::is_academic?('lreilly@stanford.edu')           # true
Swot::is_academic?('lreilly@slac.stanford.edu')      # true
Swot::is_academic?('lreilly@strath.ac.uk')           # true
Swot::is_academic?('lreilly@soft-eng.strath.ac.uk')  # true
Swot::is_academic?('lee@ugr.es')                     # true
Swot::is_academic?('lee@uottawa.ca')                 # true
Swot::is_academic?('lee@leerilly.net')              # false
Swot::is_academic?('lee@gmail.com')                 # false
Swot::is_academic?('lee@stanford.edu.com')          # false
Swot::is_academic?('lee@strath.ac.uk.com')          # false

Verify Domain Names

Swot::academic?('harvard.edu')                    # true
Swot::academic?('www.harvard.edu')                # true
Swot::academic?('http://www.harvard.edu')         # true
Swot::academic?('http://www.kink.com')            # false
Swot::academic?('http://www.rangers.co.uk')       # false

What is a swot?

UrbanDictionary will fill you in ಠ_ಠ

Contributing to Swot

  • Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet.
  • Check out the issue tracker to make sure someone already hasn't requested it and/or contributed it.
  • Fork the project.
  • Start a feature/bugfix branch.
  • Commit and push until you are happy with your contribution.
  • Make sure to add tests for it. This is important so I don't break it in a future version unintentionally.
  • Please try not to mess with the Rakefile, version, or history. If you want to have your own version, or is otherwise necessary, that is fine, but please isolate to its own commit so I can cherry-pick around it.

Known Issues /

  • You can search by email and domain names only. You cannot search by IP.
  • Can't handle port numbers yet.
  • You don't know if the email address is a student, faculty, staff, etc.

Copyright

Copyright (c) 2012 Lee Reilly. See LICENSE.txt for further details.

Pop Quiz Answers

All of 'em.