shortimer is a django web app that collects job announcements from the code4lib discussion list and puts them on the Web. Basically shortimer subscribes to the code4lib discussion list, and periodically pops its email account looking for job advertisements. When it notices what looks like a job ad it adds it to the database, where it can be curated by folks who have an account.
To get shortimer running locally you will need to follow these instructions. The first step installs virtualenv which provides a Python sandbox environment for you to install the other dependencies. Clearly apt-get is only available on Debian based systems, but you will probably have a similar mechanism to get virtualenv installed using other packages managers (homebrew, rpm, etc). From there on things should work independent of what operating system you are using.
sudo apt-get install python-virtualenv mysql-server libmysqlclient-dev
git clone git://github.com/code4lib/shortimer.git
cd shortimer
virtualenv --no-site-packages ENV
source ENV/bin/activate
- Set up your settings file (see
settings/README.md
for details) - In your python shell:
import nltk
, thennltk.download()
(this will open up a new GUI window outside your shell). Download Models > maxent_treebank_pos_tagger - Acquire a Google public API key and turn on the Freebase API for your Google account. (The specifics of how to do this change on Google's whim, so Googling for them is your best bet.)
pip install -r requirements.txt
export DJANGO_SETTINGS_MODULE=shortimer.settings.dev.yoursettingsmodule
- In order for people to login with their github, facebook, twitter, linkedin credentials you will need to create applications on those sites, and set their oauth keys as environment variables with the names referenced in settings/base.py. For development you can probably get by with just one login provider.
- Set the
GOOGLE_API_KEY
environment variable (this enables Freebase to work, which is required for some tests and functionality). python manage.py syncdb --migrate --noinput
python manage.py runserver
- Point your web browser at http://locahost:8000 .
- If you are doing development and want a snapshot of the db just ask edsu.
If you install virtualenvwrapper on top of virtualenv, you can set all the environment variables in ~/.virtualenvs/customfit/bin/postactivate
the first time you set up the project, and you won't need to do those steps again.
python manage.py createsuperuser
and follow the prompts- Add the following to your personal settings file: ''' AUTHENTICATION_BACKENDS += ( 'django.contrib.auth.backends.ModelBackend', ) '''
Your superuser can now log in at /admin
.
It might be useful for shortimer to monitor places where jobs are posted on the web and scrape them, where they could then be approved (or deleted) in the queue. Here are some sites that might be useful to watch:
- Digital Preservation Coalition
- Library jobs in the Chronicle of Higher Education
- Digital Humanities Job Archive
- ALA Job List
- libjobs
- LITA Jobs
- NDIIPP on Twitter
- metadatalibrarians
- Archives Gig also available on Twitter
- Canadian Libraries Association Jobs
- Society of American Archivists
- libgig
- DigitalKoans also on Twitter
- idealist