Skip to content

Loading…

alpha usage feedback needed #4

Closed
cjlee112 opened this Issue · 5 comments

2 participants

@cjlee112
Owner

We really need more feedback on the alpha version of the site (https://selectedpapers.net): user interface questions or complaints; bug reports; suggestions etc.

@chervov @edsong @arhpreston @jsteen @graysonwright @wbrenna @cschaffner @marcharper Can you help out? Sorry to contact you this way but it's the only way I could find to contact other github users.

@graysonwright

I don't have as much time to work on this as I originally expected -- I'm trying to set up a web consultancy business, which is taking up a lot of my time, so I don't think I'll be able to contribute much.

Also, the two or three times I have tried to contribute, I've had immense pain just trying to get the environment set up. You should really consider an automated script that installs the required packages, and reduce it's dependency on the key files -- the lower the barrier of entry to development, the more help you're likely to receive.

If you're not sure what I'm talking about, try to get it running on a fresh machine from a fresh github checkout, and see how long it takes.

Sorry I can't contribute more -- best of luck.

@cjlee112
Owner
@graysonwright

Sure, no problem:

Environments

I originally tried to install on Mac OS X, Mountain Lion. After encountering some problems, I created a virtual machine running Ubuntu, and ran it locally using Vagrant. But even on this completely fresh machine, I ran into many of the same problems.

Problems

  • I didn't know that I needed to install dependencies until I ran the code and got a Module Missing error (or something along those lines). When I got an error like this, I had to do a google search to find out what package I needed to install, then figure out the best package manager to install it with. Once I finally figured that out for the first dependency, I ran the app again, and got another error about another missing dependency.

I had to repeat that process about 6 times before I finally got all of the dependencies set up. Luckily, I'd used MongoDB before with a rails project, so I knew how to set that up.

The next time I ran the file, it complained that it couldn't find a file for the Google API key. I dug into the source to find out where to create the file, and then what the internal format was.
Ran the code again, and had to repeat to create a Twitter key file. (with a different format -- a bit inconvenient)

Possible Solutions

API keys

For the API key files, it would be useful to create sample files, so that setup could look like this:

cp google/keys.json.example google/keys.json
vi google/keys.json
## Insert API keys

-- no digging around the code to find out whether it's supposed to be in JSON format or simple key-value pairs.

Dependencies

Below is a (partial) list of required packages -- I installed them with the pip package manager, then generated the list with pip bundle. Theoretically (I haven't tried it), you can then use the generated bundle file to quickly install the dependencies on a new machine.

CherryPy==3.2.4
GnuPGInterface==0.3.2
apiclient==1.0.2
command-not-found==0.1
distribute==0.6.10
google-api-python-client==1.1
httplib2==0.8
oauth2==1.5.211
oauth2client==1.1
pymongo==2.5
python-apt==0.7.94.2ubuntu6.4
python-dateutil==2.1
python-gflags==2.0
requests==1.2.0
six==1.3.0
twitter==1.9.4
ufw==0.30pre1-0ubuntu2
urllib3==1.6
wsgiref==0.1.2

Note: these may not be all required packages -- I haven't tried setting up from the current master branch.

Bottom Line

Generally, it's good to be able to set up a project in one command -- including downloading dependencies, and run the tests for the project in another single command. I'd recommend using the make utility to get something like this working -- there's probably even a python port of make with a better syntax that you could look into.

Hope this helps!

@cjlee112
Owner
@cjlee112
Owner

OK, we're now getting lots of great feedback from users, so I'm going to close this issue.

@cjlee112 cjlee112 closed this
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.