NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
Application Platforms and Developer Communities - New software tools and apps to support the research workflow
1. Application Platforms and Developer Communities -
New software tools and apps to support the research workflow
Computer Science Roundtable - July 16, 2012
Michael Habib, MSLS
Product Manager, Scopus
habib@elsevier.com
Twitter: @habib
2.
3. ScienceDirect
– Elsevier’s online full text portal with 11 million full text
articles from 2000+ journals as well as thousands of books
Scopus
– World’s largest abstract and citation database with 40
million abstracts, millions of author and affiliation profiles
and reference and citation data.
Hub
– Comprehensive search covering ScienceDirect, Scopus and
the Scirus scientific web index covering 400 million records
from patents databases, arXiv, lab pages, news and more.
8. Developer Events 2011
10 Challenges, 4 Continents, 10 Countries
6 Global Institutions, 525+ Developers
35+ Apps launched
$65,000 in Total Prize Money
App s for
Scie nce
coun tries
9. “Hackathon” at NJIT
61 students, 13 teams
5 judges, 4 speakers
3 winners, 8 SciVerse apps
24 hours of coding
$3,000 in total prizes
“The Elsevier hackathon is the kind of
challenging practical real-world collaborative
programming experience we like to provide
to students to augment the concepts that we
teach in the classroom”
-Narain Gehani
Dean College of Computer Sciences, NJIT
[+]
10. Apps for Science 2011
JUDGES
Akhilesh Pandey James Hendler Lee Dirks Tony Askew
Johns Hopkins University Rensselaer Polytechnic Institute Microsoft Reed Elsevier Ventures
Gully Burns Jeff Jonas Santo Politi
University of Southern California IBM Spark Capital
11.
12. WHY ARE WE DOING THIS?
• Literature and data want to
be together
– Mass of data available to researchers outside
the formal literature is huge and growing
– This is inefficient - task switching between
multiple interfaces, hard to find resources...
– Smart apps can facilitate interoperability,
bring relevant data into context with papers
13. (Researchers, N = 3824 ; study by Publishing Research Consortium, 2010)
High importance but not
easily accessible
15. WHY ARE WE DOING THIS?
• Customers expect the tools
they use to work together
– Google Gmail on your Apple iPhone synced to
your Dell laptop running Microsoft Windows
– SciVerse is one tool among many our users are
using and our customers are subscribing to
– APIs and an open platform brings SciVerse to
where users are and lets other products add
value to SciVerse
16.
17. ADDED VALUE
“bX is already
available on the
eLibrary, and is
proving very useful in
presenting users with
highly relevant
material beyond what
they find through
their own searches.
Adding bX to SciVerse
will bring added value
to those systems too.“
Gill McDonald – Librarian,
Cardiff University
18. WHY ARE WE DOING THIS?
• Domain specificity is the
future of research tools
– The current one-size-fits-all model of
publishing is print-centric and needlessly
constricting
– Publishers/database providers cannot build
tools for every single scientific discipline
– An open platform is the obvious solution – let
the research community build the tools they
need
19.
20. “THIS IS A MEDIEVAL WAY OF
COMMUNICATING
INFORMATION. WE HAVE TO
WORK TOGETHER TO CHANGE
THIS. THERE IS SO MUCH MORE
WE CAN DO.”
25. APPS ARE INTEGRATED GADGETS
• OpenSocial, Shindig container for
serving gadgets
– Each gadget displayed in its own iFrame
– Shindig container proxies content to comply with same
origin policy
• XML wrapper around HTML/JS
– Gadgets API with some proprietary extensions
– Can contain client side code or display external web pages
• Integrated, context-aware
– Many integration points in key pages in SciVerse user
experience
– Advanced features supported via javascript calls (link text on
page, run a search, open overlay etc.)
– Can ask container for data about user, inputs and page
(meta)data
26. HTML GADGETS
<?xml version="1.0" encoding="UTF-8"?>
<Module>
<Require feature="opensocial-0.9" />
<Require feature="sciverse" />
<Require feature="hub" />
</ModulePrefs>
<Content type="html" view=“profile">
<![CDATA[
<p>Hello World!</p>
]]></Content>
<Content type="html" view=“canvas">
<![CDATA[
<p>Hello World! This is my cat!</p>
<img src=“http://foo.com/images/myCat.jpg” width=“800” height=“600”>
<a href=“http://foo.com/images/catPics.html” target=“_blank”>See more
pics of my cat here.</a>
]]></Content>
</Module>
27. URL/PROXIED CONTENT GADGETS
Proxied Content – external content is proxied, can use extensions
<?xml version="1.0" encoding="UTF-8"?>
<Module>
<Require feature="opensocial-0.9" />
<Require feature=“sciverse” />
</ModulePrefs>
<UserPref name="doi" datatype="hidden"/>
<Content type="html" view="profile" href="http://foo.com/docRef=__UP_doi__"/>
</Module>
URL – external web page is displayed as is, can still pass data on URL
<?xml version="1.0" encoding="UTF-8"?>
<Module>
<Require feature="opensocial-0.9" />
</ModulePrefs>
<UserPref name="doi" datatype="hidden"/>
<Content type=“URL" view="profile" href="http://foo.com/docRef=__UP_doi__"/>
</Module>
28. EXTENSIONS
Retrieve contextual data: Retrieve contextual data:
•getArticleContent(); Retrieve current article/abstract text
•getContextInfo(); Retrieve all context data (i.e. metadata)
•getResults(); Retrieve metadata of search results
•subscribeToQuery(); Subscribe to user’s search query input
•subscribeToResults(); Subscribe to updated results lists
UI integrations UI integrations
•gotoCanvas(); Display canvas (full screen) view of gadget
•showHoverView(); Display hover (overlay) view of gadget
•showResultsView(); Display gadget view under specific results
•linkText(); Link specific terms on the page
•returnQuerySuggestions(); Provide auto-complete query suggestions
Utilities Utilities
•makeContentAPIRequest(); Make content API call to SciVerse APIs
•makeRequest(); Make request to external API
•adjustHeight(); Resize gadget window
•makeMeInvisible(); Make gadget disappear
•makeMeVisible(); Make gadget appear
29. EXAMPLE – ENTITY LINKING
• getArticleContent();
• retrieves full text of article user is
viewing
• linkText(‘archidonic acid’);
• links selected terms in article, notifies
on click events
• showHoverView(‘LMID’);
• displays “hover” gadget view, passes
arbitrary data