pjotrp / biogems.info Goto Github PK
View Code? Open in Web Editor NEWTools for keeping track of biogems. Moved to https://git.thebird.nl/free/biogems.info
Home Page: http://biogems.info/
Tools for keeping track of biogems. Moved to https://git.thebird.nl/free/biogems.info
Home Page: http://biogems.info/
Running
bundle exec ./create_website.sh --test
Fails during list-bio.rb
because of errors of the form:
method_missing': undefined method `ivars' for #<Gem::Specification name=bio-logger version=1.0.1>
The script retrieves the gem spec with bundle exec gem specification -r #{name}
and then loads it into YAML. The result looks like:
Gem::Specification.new do |s|
s.authors = ["Pjotr Prins"]
s.date = Time.utc(2012, 4, 2)
s.dependencies = [Gem::Dependency.new("log4r",
Gem::Requirement.new([">= 1.1.9"]),
:runtime),
Gem::Dependency.new("jeweler",
Gem::Requirement.new([">= 0"]),
:development),
Gem::Dependency.new("shoulda",
Gem::Requirement.new([">= 0"]),
:development),
Gem::Dependency.new("bundler",
Gem::Requirement.new([">= 0"]),
:development),
Gem::Dependency.new("rspec",
Gem::Requirement.new([">= 2.3.0"]),
:development),
Gem::Dependency.new("rdoc",
Gem::Requirement.new([">= 3.12"]),
:development)]
s.description = "Log4r wrapper for BioRuby"
s.email = "[email protected]"
s.homepage = "https://github.com/pjotrp/bioruby-logger-plugin"
s.name = "bio-logger"
s.require_paths = ["lib"]
s.rubygems_version = "1.8.23"
s.specification_version = 3
s.summary = "Log4r wrapper with extra features for roles and sane error handling"
s.version = Gem::Version.new("1.0.1")
end
In list-bio.rb, the ivars method is called on the Gem::Specification instance, but I don't think there is an ivars method. See https://gist.github.com/robsyme/5429320 to replicate.
Recent releases should be shown as an active color.
On website: http://www.biogems.info/
Looks ok. I have two suggestions though:
As a user, I want to know whether a project has the last update in 2005 or in 2011 (2005 sounds like an inactive project, 2011 sounds still active)
This way, a user can find out how old a given project is.
For instance, I would like to look at "what is new here" and immediately look at the latest entry.
To get an idea what I mean with this, look at:
You will instantly see which project was updated last.
So perhaps, if the above is too much work, issue a SHORT and SIMPLE news feedback on that website.
Like "3 last updated projects".
Keep it small and simple. :)
Edit: GREAT THANKS!
In the fetch from github routine, not all projects are updated. Errors are ignored, but the result is that boxes are not filled. This can be seen every day.
Based on the combined activities in the other columns, we can calculate a single activity value for each project, and color that too.
Not sure what it is, and it does not happen all the time (so it must be related to timeouts)
/home/wrk/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/openssl/buffering.rb:145:in sysread_no nblock': end of file reached (EOFError) (...) from /export/local/users/wrk/opt/ruby/biogems.info/lib/biogems/http.rb:31:in
get_https_body' from ./bin/fetch-geminfo.rb:116:in `get_github_commit_stats'
Here it is suggested that it has to do with Ruby 1.9.2
Add sorting to the table using JavaScript. There are existing libraries which should make this simple, for example:
E.g.
bio unichem
From what I can tell, the methods in http.rb open a new connection each time they're used. That means for example that for each of the 100+ requests to GitHub API, a new connection is made.
Using some kind of cache (probably just a hash of open connections per method (http/https), with the host names being keys), should speed up site generation considerably.
*** >30 stargazes
** >15 stargazers
5 stargazers
The rate limiting is dilibitating
curl https://api.github.com/rate_limit
{
"rate": {
"limit": 60,
"remaining": 13
}
}
a request renders
{
"message": "API Rate Limit Exceeded for 84.81.198.20"
}
When Travis passed, we ought to display the Ruby versions that it tests. These can be fetched from the repo travis.yml file.
We fetch commits already from github. It would be nice to list the top-committers below the news-items on the right.
lepra2
mechanize
celluloid/reel
Some GSoC gems have been renamed(!)
If we export the collected information as JSON other people can embed it in their
web pages.
It would be nice to have news items on http://biogems.info/journals.html which would list papers that
somehow seem relevant to FOSS.
I'm usually working on my small 13.3" laptop. The website looks a bit problematic at that screen size. To recreate - just resize your browser window. The feed on the right then hides the rightmost columns.
From my point of view, the solution would be to decide which columns are least important, and hide them first as the table width shrinks. And then make it possible to choose which columns to show.
Currently I'm not sure if the website can handle any new columns - I expect that in the future there will be more.
Another addition would be to make each row clickable (or something similar), and when a user clicks on it, the row would expand downwards and show all gem data, and maybe some additional data for which now there would be enough space.
Pjotr, am I making any sense? Was the width of the table/page ever an issue for you?
Ben moved to Brisbane. Some locations are screwed up (Zuhao in the Congo?)
This is a test issue that is run by cucumber.
Rubygems is not giving last 90d stats any longer - still should work according to API docs.
It confuses the arrows on the left.
Statimatic is a bit dated and abandoned by the author:
https://groups.google.com/forum/?hl=en_GB#!topic/staticmatic/tkGj2eFt7yM
And has not seen a new release in 3 years. Have you thought about moving to something more up to date?
The author of staticmatic recommends a fork called middleman:
http://middlemanapp.com/
https://github.com/middleman/middleman
No offence, but http://www.biogems.info/ is one of the ugliest sites I've ever seen. I think it gives bad PR for biogems. What about frontend rewrite, even to bootstrap. You can find many almost free templates at http://themeforest.net/
These are not fully correct.
Be good to show an indication op popularity, in addition to DL numbers.
Need to update the scripts.
We would like to split the page into active, normal and inactive gems.
In the header row of both biogems and rubygems it says
7d 90d*) 7d 90d**)
downloads commits
But isn't the first column total downloads, not 7d downloads? That is what it says down the bottom, and there can't be more downloads in the last 7 days than in the previous 90, right? 7d commits makes more sense
We would like to color the DL columns for activity. Here we should not just use the DL number, but a delta, as I did for calculation the arrows. Wat is interesting is not the pure DL rate, but the difference over a period. What needs to be done is to sort both total DL and 90-d DL lists, and create a color gradient based on the difference. We can use the same color for both boxes for each biogem. How is that for an idea?
Use Javascript to show the last commit made to a biogem. The biogems.info website can reflect the current state that way.
ruby bio
ruby biology
These two queries in Google I believe should show the link to biogems.info on the first page of results. Probably as the second link after bioruby.org.
But that is not the case when I run the search. It's not even in the first 10 pages of results.
When searching for "ruby bioinformatics", it's a bit better - currently place 8 of 10 on the first page for me.
Adding a meta tag to the head of the page would probably help a lot.
We want to generate a page that lists all outstanding issues for different github
projects that have labels 'newbie', 'intermediate' and 'experienced' and display
them on a page with the project name and the task subject, linked to the issue. Ideally the script is separate and generates YAML output. The page is generated from the YAML. See the other biogems.info scripts for examples.
It's absolutely impossible to remember in which order they are yielded.
You know, it's funny to see in commit history how the number of objects steadily rose from 2 up to 23 :)
This is actually a duplicate of the github authentication issue
issues are all zero on the website. It was working before.
Would be good to have some persistent storage - for when some services fail to update a few days.
With multiple versions you'd expect the latest to be on the list. Not always the case.
We need to introduce a generic RSS/Atom parser for the blogs. Some examples on the RSS branch
When biogem issues are marked with 'Newbie', we should show them on http://biogems.info/
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.