Update README.md
This commit is contained in:
parent
1bc2aae161
commit
667cfe2068
117
README.md
117
README.md
@ -1,109 +1,42 @@
|
||||
# Swot :apple:
|
||||
|
||||
[](https://travis-ci.org/leereilly/swot) [](http://badge.fury.io/rb/swot)
|
||||
JetBrains uses **swot** repository to grant free licenses for JetBrains tools to students and teachers worldwide. If your email is in one of the domains listed in this repository, you are entitled to request your free license from JetBrains. Visit http://jetbrains.com/student to request!
|
||||
|
||||
If you have a product or service and offer **academic discounts**, there's a good chance there's some manual component to the approval process. Perhaps `.edu` email addresses are automatically approved because, for the most part at least, they're associated with American post-secondary educational institutions. Perhaps `.ac.uk` email addresses are automatically approved because they're guaranteed to belong to British universities and colleges. Unfortunately, not every country has an education-specific TLD (Top Level Domain) and plenty of schools use `.com` or `.net`.
|
||||
There is lib/domains directory which contains hierarcicaly structured list of email domains belonged to various educational institutions. The domains are mostly owned by colleges and universities, and also by groups of schools united together because they are sharing the same email domains between several institutions, such as Township High School District 211 of Cook County, Illinois.
|
||||
|
||||
Swot is a community-driven or crowdsourced library for verifying that domain names and email addresses are tied to a legitimate university of college - more specifically, an academic institution providing higher education in tertiary, quaternary or any other kind of post-secondary education in any country in the world.
|
||||
If you know a school, college or university which is not in this list, feel free to submit a pull request to add it.
|
||||
|
||||
**Pop quiz:** Which of the following domain names should be eligible for an academic discount? `stanford.edu`, `america.edu`, `duep.edu`, `gla.ac.uk`, `wunizar.es`, `usask.ca`, `hil.no`, `unze.ba`, `fu-berlin.de`, `ecla.de`, `bvb.de`, `lsmu.com`. Answers at the foot of the page.
|
||||
# Which educational institutions can be added to the repository?
|
||||
|
||||
### Installation
|
||||
Your pull request for adding a new email domain to the repository will be satisfied if all of the conditions below are met:
|
||||
1) The domain is used by an educational institution, which offers at least one long-term course (one year or longer), and the course is somehow related to IT (it is in computer science, software engineering, statistics, bioinformatics, etc.)
|
||||
2) The educational institution has a physically existing location, where students attend classes in classrooms, not over the Internet. In general, we do not include online universities to this repository.
|
||||
|
||||
Swot is a Ruby gem, so you'll need a little Ruby-fu to get it working. Simply
|
||||
**NOTE:** If an organization provides primary and secondary education only (i.e., no high or higher education programs), it shall not be included into the list. Primary and secondary school students usually do not need professional developer tools, and in case they learn some programming, we are glad to offer them Community versions of the tools, which are free to everybody, such as PyCharm Community Edition, etc.
|
||||
|
||||
`gem install swot`
|
||||
# How to add a domain to this repository
|
||||
|
||||
Or add this to your `Gemfile` before doing a `bundle install`:
|
||||
To add a domain, make a pull request. You must be familiar with git tool or GitHub user interface in order to make a pull request.
|
||||
We review your request and merge it (i.e., accept it) if it meets the following rules:
|
||||
|
||||
`gem 'swot'`
|
||||
1) Each domain is represented by a single .txt file in the repository. If there is a file lib/domains/edu/mit.txt, it means that e-mail domain `mit.edu` is included into the repository. Please note that the repository uses reverse order of the name components, and also note that .txt extension is mandatory.
|
||||
|
||||
### Usage
|
||||
Example: add file /lib/domains/ng/edu/unaab.txt to add a domain `unaab.edu.ng` to the repository.
|
||||
|
||||
#### Verify Email Addresses
|
||||
2) Pull request can include one or more files which you wish to add.
|
||||
|
||||
```ruby
|
||||
Swot::is_academic? 'lreilly@stanford.edu' # true
|
||||
Swot::is_academic? 'lreilly@strath.ac.uk' # true
|
||||
Swot::is_academic? 'lreilly@soft-eng.strath.ac.uk' # true
|
||||
Swot::is_academic? 'pedro@ugr.es' # true
|
||||
Swot::is_academic? 'lee@uottawa.ca' # true
|
||||
Swot::is_academic? 'lee@leerilly.net' # false
|
||||
```
|
||||
3) Each file in the repository has to contain a name of the university, which the domain represented by the file belongs to. For example, a file /lib/domains/ng/edu/unaab.txt has to contain one line in it: "Federal University of Agriculture, Abeokuta".
|
||||
First line of the file has to contain an official name of the educational organization.
|
||||
Other lines can contain other known names of the university. A university in a non-English speaking country can have one line containing the university name in their native language, and one line containing the name in English.
|
||||
|
||||
#### Verify Domain Names
|
||||
4) If the domain is shared among several institutions, such a school district domain, please add the last line starting with dot (".") followed by a word "group". Example:
|
||||
'.group'
|
||||
|
||||
```ruby
|
||||
Swot::is_academic? 'harvard.edu' # true
|
||||
Swot::is_academic? 'www.harvard.edu' # true
|
||||
Swot::is_academic? 'http://www.harvard.edu' # true
|
||||
Swot::is_academic? 'http://www.github.com' # false
|
||||
Swot::is_academic? 'http://www.rangers.co.uk' # false
|
||||
```
|
||||
# FAQ
|
||||
### There are many domains in my university, how can I add all of them?
|
||||
If all the domains used for teachers' and students' email are in the same upper-level domain, you can add the upper-level domain. For example, if there is a domain joedoe.org owned by a university, and there are subdomains such as stud.joedoe.org and prof.joedoe.org, you can add joedoe.org domain, and it will be correct.
|
||||
|
||||
#### Find School Names
|
||||
However, if the upper-level domain is also used by alumni, research staff, and other people who do not involved into education, we encourage you to add separate subdomins domains, if it is possible.
|
||||
|
||||
```ruby
|
||||
Swot::school_name 'lreilly@cs.strath.ac.uk'
|
||||
# => "University of Strathclyde"
|
||||
|
||||
Swot::school_name 'http://www.stanford.edu'
|
||||
# => "Stanford University"
|
||||
```
|
||||
|
||||
### Contributing to Swot
|
||||
|
||||
Contributions welcome! Please see the [contribution guidelines](CONTRIBUTING.md) for details on how to add, update, or delete schools. Code contributions and ports to different languages welcome too.
|
||||
|
||||
**Thanks** to the following people for their contributions:
|
||||
@blutack, @captn3m0, @chrishunt, @johndbritton, @johnotander, @pborreli, @rcurtis, @vikhyat,.
|
||||
|
||||
**Special thanks** to @weppos for the [public_suffix](https://github.com/weppos/publicsuffix-ruby) gem :metal:
|
||||
|
||||
### Known Issues
|
||||
|
||||
* You can search by email and domain names only. You cannot search by IP.
|
||||
* You don't know if the email address belongs to a student, faculty, staff member, alumni, or a contractor.
|
||||
* There may be a few false positives, missing institutions... maybe even a couple of typos. Contributions welcome!
|
||||
|
||||
**Please note:** just because someone has verified that they own `lreilly@stanford.edu` does *not* mean that they're a student. They could be faculty, staff, alumnni, or maybe even an external contractor. If you're suddenly getting a lot of traffic from websites like [FatWallet](http://www.fatwallet.com) or [SlickDeals](http://www.slickdeals.net), you might want to find out why. If you're suddenly getting a lot of requests from a particular school, you should look into that too. It may be good business, word of mouth, or someone may have found a loophole. Swot gives you a *high confidence level* - not a guarantee. I recommend putting some controls in place or at least monitor how it's doing from time to time.
|
||||
|
||||
### What is a swot?
|
||||
|
||||
According to [UrbanDictionary](http://www.urbandictionary.com/define.php?term=swot) :blue_book:
|
||||
|
||||
> A word used by morons to insult a person of superior academic abilities.
|
||||
|
||||
or
|
||||
|
||||
> [verb] To Swot; Revision undertaken preceding an examination.
|
||||
|
||||
or
|
||||
|
||||
> [backronym] Stupid Waste of Time
|
||||
|
||||
### Pop Quiz Answers
|
||||
|
||||
Hopefully, you'll be surprised by some of this:
|
||||
|
||||
| Domain | Academic? | Comments |
|
||||
|--------|-----------|----------|
|
||||
|`stanford.edu`|:heavy_check_mark:|OK, this was an easy one so you could get at least *one* right|
|
||||
|`america.edu`|:heavy_multiplication_x:| Prior to October 29th 2001, anyone could register a `.edu` domain name ([details](http://en.wikipedia.org/wiki/.edu#Grandfathered_uses)) |
|
||||
|`duep.edu`|:heavy_check_mark:| Alfred Nobel University is a *Ukranian* University *in the Ukraine* i.e. not in the USA :us: |
|
||||
|`gla.ac.uk`|:heavy_check_mark:|Glasgow University in Scotland|
|
||||
|`unizar.es`|:heavy_check_mark:|The University of Zaragoza in Spain|
|
||||
|`usask.ca`|:heavy_check_mark:|The University of Saskatchewan in Canada|
|
||||
|`hil.no`|:heavy_check_mark:|Lillehammer University College in Norway|
|
||||
|`unze.ba`|:heavy_check_mark:|University of Zenica in Bosnia and Herzegovina|
|
||||
|`fu-berlin.de`|:heavy_check_mark:|Free University of Berlin in Germany|
|
||||
|`ecla.de`|:heavy_check_mark:|ECLA of Bard is a state recognized liberal arts university in Berlin, Germany |
|
||||
|`bvb.de`|:heavy_multiplication_x:|It's a soccer team from Germany|
|
||||
|`lsmu.com`|:heavy_check_mark:| Lugansk State Medical University in the Ukraine |
|
||||
|
||||
If you verified this by visiting all of the websites, how long did it take you? Did you have fun? Imagine you had to do this 10 - 100 times every day. Now you know a little something about the inspiration for Swot. Swot can verify them all in a fraction of a second and remove a :poop: part of someone's job.
|
||||
|
||||
### See Also
|
||||
|
||||
* [gman](https://github.com/benbalter/gman) - like swot, but for government emails
|
||||
* [swotphp](https://github.com/mdwheele/swotphp) - PHP port of Swot
|
||||
### Some universities have their names duplicated in the first and the second line in respective .txt file. Shall I put the university name twice in my .txt file to have the domain added?
|
||||
No. We have no idea why they put two identical lines into .txt file, it does not make any sense in this repository. However, nothing bad happens if you do it, don't worry. It does not affect our decision on your request.
|
||||
|
||||
Loading…
Reference in New Issue
Block a user