The Biodiversity Library Exhibition is more than just spices. From the conquest of Mexico in the sixteenth century to Charles Darwin’s voyage on the Beagle some three hundred years later, the BLE also welcomes you to relive the greatest and most famous expeditions ever mounted in history..
Currently, the exhibition features 18 expeditions from various periods of time. Each expedition is presented by means of diaries, summaries, trivia and of course the beautiful illustrations that the Biodiversity Heritage Library has become well known for. Just one fine example is The Canadian Bird book, which is linked to Jacques Cartier’s Voyages to the New World, which ran from 1524 to 1543.
If you want to discover all treasures stored in the BLE on expeditions, you better check it out and hit the “Find me in books”-button. But that is not all. Visitors can contribute to the expeditions exhibition as well! If you have a favorite exhibition that is not in there, you can prepare a text (according to the structure used on the website) and send it to us. If it is published, you will be mentioned here on the blog and in the credits on the BLE front page. Texts and proposals can be sent via the contact form. Good luck!
BHL and its developers: Andreas Kohlbecker
The second BHL-Europe developer to be featured on the blog is Andreas Kohlbecker from the Botanic Garden and Botanical Museum in Berlin. Read on to find out more on his involvement in BHL!
So Andreas, what do you do for BHL-Europe?
Currently, I’m one of the main developers of the search facilities of BHL-Europe. I am for example dedicating my time to the solr server, which is our search engine. This server is responsible for indexing the content stored in the BHL-Europe system and thus is the technological base for making the content accessible from the portal via search and browse functionalities. Simply put, it’s the connection between the portal, where all information and scans are made available via the web, and the archived and stored data behind it.
When I came to the project in November 2009, I coordinated the integration of BHL and BHL-Europe with the EDIT-project (European Distributed Institute of Taxonomy). After that time I was concerned with architectural questions regarding the taxonomic intelligence tools of BHL Europe. I could fill this position since I am both biologist and computer scientist. After that time I took care of setting up some core services for the BHL-Europe infrastructure and services supporting the development process like Jenkins, our continuous integration server.
Can you tell us some more about Solr?
Solr is a very fast open source enterprise search platform written in Java. It offers full-text search, spell check, faceted search, hit highlighting and it has tools that allows to deal with umlauts and special characters. It even has the possibility to find correct hits if you don't type the words exactly as they are stored in the index, we call this feature 'fuzzy search'. The full-text indexing and search core of Solr is the 'Lucene' search engine. Solr extends the capabilities of Lucene and has REST-like HTTP/XML and JSON APIs that allow to use Solr remotely and makes its application independent of specific programming languages.
One of the advantages of using Solr is that it not only can create an index, but that it can also store the information that has been indexed. We are making use of this feature as a caching mechanism to speed up things in the BHL-Europe portal. For example if you run a search in the portal all the information displayed in the result lists is directly coming out of Solr, so we don’t have to ask our core system every time for details on the matching entities. Only for example clicking on a link to the actual metadata or book viewer will access the Fedora-system.
The linking element between this core system, Fedora (the system that stores all the scans and the according metadata) and Solr is gSearch. If you put a new document or book into Fedora, gSearch recognizes this, and then transforms the internal Fedora data into a Solr-document. Then it tells Solr to index this document. This means the Solr-index is always up to date with the latest changes in Fedora.
Has the development of the BHL-Europe search facilities been difficult?
For the development process In general, one of the biggest difficulties was the fluctuation of staff, which is very common to projects like this.
Another big challenge more specific to the search functionality was to make the search functionality of portal as smooth and effective as possible. We had to align the different search options that are offered by the portal: simple search, advanced search, faceted search and browsing by several categories. Improving these aspects of the user interface was and still is an iterative process. In the beginning, we had wrong expectations of what the user wanted, and it was difficult to foresee all the hurdles on the way to a functional system.
Other demanding difficulties were due to a design principle of solr/Lucene which prevents you from reliably using wild-cards and umlauts in combination. This might be OK the for the Anglo-American linguistic area , but it is actually a bug if you have to deal with language full of diacritic character like in Europe.
You were mentioning Jenkins before, can you tell us something about this integration environment?
In the previous interview Chris Sleep was talking about github, the source code repository and version control system. Jenkins is the next step in the development workflow. It helps us automating repetitive and crucial tasks: all code changes made by developers need to be build and deployed to testing servers. The integration server holds the whole BHL-Europe system and always reflects the most recent state of development. Once the system there has proven to be mature enough to be tested the BHL-Europe system components are deployed to the next stage, to the testing servers. There all in depth testing can than take place in a stabilized environment. Once testing has proven the system to be ready for release it is deployed to the last stage in the chain, to the production servers and the new features and bug fixes will become public. Jenkins is responsible for performing these build and deployment tasks. It for example monitors our github repository for changes and triggers specific deployment jobs in turn.
So Andreas, what do you do for BHL-Europe?
Currently, I’m one of the main developers of the search facilities of BHL-Europe. I am for example dedicating my time to the solr server, which is our search engine. This server is responsible for indexing the content stored in the BHL-Europe system and thus is the technological base for making the content accessible from the portal via search and browse functionalities. Simply put, it’s the connection between the portal, where all information and scans are made available via the web, and the archived and stored data behind it.
When I came to the project in November 2009, I coordinated the integration of BHL and BHL-Europe with the EDIT-project (European Distributed Institute of Taxonomy). After that time I was concerned with architectural questions regarding the taxonomic intelligence tools of BHL Europe. I could fill this position since I am both biologist and computer scientist. After that time I took care of setting up some core services for the BHL-Europe infrastructure and services supporting the development process like Jenkins, our continuous integration server.
Can you tell us some more about Solr?
Solr is a very fast open source enterprise search platform written in Java. It offers full-text search, spell check, faceted search, hit highlighting and it has tools that allows to deal with umlauts and special characters. It even has the possibility to find correct hits if you don't type the words exactly as they are stored in the index, we call this feature 'fuzzy search'. The full-text indexing and search core of Solr is the 'Lucene' search engine. Solr extends the capabilities of Lucene and has REST-like HTTP/XML and JSON APIs that allow to use Solr remotely and makes its application independent of specific programming languages.
One of the advantages of using Solr is that it not only can create an index, but that it can also store the information that has been indexed. We are making use of this feature as a caching mechanism to speed up things in the BHL-Europe portal. For example if you run a search in the portal all the information displayed in the result lists is directly coming out of Solr, so we don’t have to ask our core system every time for details on the matching entities. Only for example clicking on a link to the actual metadata or book viewer will access the Fedora-system.
The linking element between this core system, Fedora (the system that stores all the scans and the according metadata) and Solr is gSearch. If you put a new document or book into Fedora, gSearch recognizes this, and then transforms the internal Fedora data into a Solr-document. Then it tells Solr to index this document. This means the Solr-index is always up to date with the latest changes in Fedora.
Has the development of the BHL-Europe search facilities been difficult?
For the development process In general, one of the biggest difficulties was the fluctuation of staff, which is very common to projects like this.
Another big challenge more specific to the search functionality was to make the search functionality of portal as smooth and effective as possible. We had to align the different search options that are offered by the portal: simple search, advanced search, faceted search and browsing by several categories. Improving these aspects of the user interface was and still is an iterative process. In the beginning, we had wrong expectations of what the user wanted, and it was difficult to foresee all the hurdles on the way to a functional system.
Other demanding difficulties were due to a design principle of solr/Lucene which prevents you from reliably using wild-cards and umlauts in combination. This might be OK the for the Anglo-American linguistic area , but it is actually a bug if you have to deal with language full of diacritic character like in Europe.
You were mentioning Jenkins before, can you tell us something about this integration environment?
In the previous interview Chris Sleep was talking about github, the source code repository and version control system. Jenkins is the next step in the development workflow. It helps us automating repetitive and crucial tasks: all code changes made by developers need to be build and deployed to testing servers. The integration server holds the whole BHL-Europe system and always reflects the most recent state of development. Once the system there has proven to be mature enough to be tested the BHL-Europe system components are deployed to the next stage, to the testing servers. There all in depth testing can than take place in a stabilized environment. Once testing has proven the system to be ready for release it is deployed to the last stage in the chain, to the production servers and the new features and bug fixes will become public. Jenkins is responsible for performing these build and deployment tasks. It for example monitors our github repository for changes and triggers specific deployment jobs in turn.
Spice of the Week: Black Pepper
Black pepper is one of the oldest and most widespread spices in daily use. It comprises a whopping 30% of the world trade in spices.
As a spice, black pepper consists of the dried, unripe berries of the climbing bush Piper nigrum. The pods are harvested before they are ripe, as soon as the bottom pods start to turn red. After drying, the peppercorns get their wrinkled texture and reddish-black to black color!
And while the phrase “black gold” nowadays mostly refers to oil or even coffee, it was once used as a moniker for black pepper. It used to serve as currency for paying annuities, dowries, taxes and other payments. One ounce of pepper was valued the same as one ounce of gold!
Check out this fascinating spice in the Biodiversity Library Exhibition!
Alternate recipe: French style steak
4 beefsteaks
2 tablespoons whole or coarsely ground pepper
1 tablespoon oil
1 onion
2 tablespoons butter
1 tablespoon cognac, salt
As a spice, black pepper consists of the dried, unripe berries of the climbing bush Piper nigrum. The pods are harvested before they are ripe, as soon as the bottom pods start to turn red. After drying, the peppercorns get their wrinkled texture and reddish-black to black color!
And while the phrase “black gold” nowadays mostly refers to oil or even coffee, it was once used as a moniker for black pepper. It used to serve as currency for paying annuities, dowries, taxes and other payments. One ounce of pepper was valued the same as one ounce of gold!
Alternate recipe: French style steak
4 beefsteaks
2 tablespoons whole or coarsely ground pepper
1 tablespoon oil
1 onion
2 tablespoons butter
1 tablespoon cognac, salt
Pound beefsteaks to tenderize, pound in pepper from both sides, salt to taste and sear in oil three minutes on each side. Remove, simmer thinly sliced onion in drippings, return meat, pour cognac over meat and light on fire. Blow out fire and add butter. Pepper steak is served with fries and salad.
First look: the Advanced Search option
A few weeks ago, we gave you a first glimpse of the BHL-Europe portal’s design. This time around we delve deeper into one of its functionalities, i.e. the advanced search option.
When doing an advanced search via the BHL-Europe portal, you can use the Boolean operators and other search intelligent characters, like the wildcards, brackets, ... These functions are described on the hint bar on the lower part of the advanced search page. You can, for instance, search for an exact phrase or search for a range of years. Of course, there are even more functions:
Metadata fields
The advanced search allows you to search in an specific metadata field or search category. First and foremost is the title, which represents titles for all content types (Journal/Series, Volumes, Articles and Monograph). The other fields include Author, Year, Language, Place of publication, Scientific name, Common name etc. There are 11 search categories which are extended in combination with the facet function in the result list . This faceting will be described in detail in the next development news update.
Add a field
For combining searches across several metadata fields, you can click the plus button on the left side of the icon to add a field. The number of search fields is not limited and you can combine fields to get the most precise search result. The default relationship between added search fields is the Boolean operator “AND”. Clicking a minus button at the other end of the field will remove the specific search field. It’s important to remember that searches can also be improved when viewing the result list by making use of the facet list or editing the search.
Exact search
The functionality of the exact term/phrase check box is pretty much self-explanatory. This function can be used as a global parameter to enforce exact searching across all fields, or it can be specified for a specific search field by checking the check box inside the field.
Expand search
Checking this box enables you to use the additional web services as a CoL, uBio, PESI and VIAF. These services help with searching for authors, scientific names or common names by using external name databases. This search expansion will let you find the result even when you do not know the exact name for which you are searching.
For example if I am searching for author Darwin and have checked expand search, the web service is expanding the query to include many different formulations of Darwin‘s name including for example Chinese, Arabic or Russian translations of that name. In the result list generated from this search could be Darwin publications translated in to different languages. For scientific names the web services also looks for synonyms of that genus or species or related common names.
The expand search function works as a global parameter, but affects only the metadata fields author, scientific name and common name.
Reset
Reset is a self explanatory function. Clicking on the reset button will clear the whole search string.
Save query
If you are logged in you can save your search parameter under a specific name and load it when you would like to continue your search. The number of search queries is not limited. Save queries are stored under the “My queries”-menu. This functionality will be available soon.
That’s all on the advanced search function. Be sure to check back for the next development news, which will focus on the search result list. This list is generated after you click the browse button.
When doing an advanced search via the BHL-Europe portal, you can use the Boolean operators and other search intelligent characters, like the wildcards, brackets, ... These functions are described on the hint bar on the lower part of the advanced search page. You can, for instance, search for an exact phrase or search for a range of years. Of course, there are even more functions:
Metadata fields
The advanced search allows you to search in an specific metadata field or search category. First and foremost is the title, which represents titles for all content types (Journal/Series, Volumes, Articles and Monograph). The other fields include Author, Year, Language, Place of publication, Scientific name, Common name etc. There are 11 search categories which are extended in combination with the facet function in the result list . This faceting will be described in detail in the next development news update.
Add a field
For combining searches across several metadata fields, you can click the plus button on the left side of the icon to add a field. The number of search fields is not limited and you can combine fields to get the most precise search result. The default relationship between added search fields is the Boolean operator “AND”. Clicking a minus button at the other end of the field will remove the specific search field. It’s important to remember that searches can also be improved when viewing the result list by making use of the facet list or editing the search.
Exact search
The functionality of the exact term/phrase check box is pretty much self-explanatory. This function can be used as a global parameter to enforce exact searching across all fields, or it can be specified for a specific search field by checking the check box inside the field.
Expand search
Checking this box enables you to use the additional web services as a CoL, uBio, PESI and VIAF. These services help with searching for authors, scientific names or common names by using external name databases. This search expansion will let you find the result even when you do not know the exact name for which you are searching.
For example if I am searching for author Darwin and have checked expand search, the web service is expanding the query to include many different formulations of Darwin‘s name including for example Chinese, Arabic or Russian translations of that name. In the result list generated from this search could be Darwin publications translated in to different languages. For scientific names the web services also looks for synonyms of that genus or species or related common names.
The expand search function works as a global parameter, but affects only the metadata fields author, scientific name and common name.
Reset
Reset is a self explanatory function. Clicking on the reset button will clear the whole search string.
Save query
If you are logged in you can save your search parameter under a specific name and load it when you would like to continue your search. The number of search queries is not limited. Save queries are stored under the “My queries”-menu. This functionality will be available soon.
That’s all on the advanced search function. Be sure to check back for the next development news, which will focus on the search result list. This list is generated after you click the browse button.
BHL-Europe and Science on a Plate
Science on a Plate, Scotland’s first festival celebrating science and food, will take place at the Royal Botanic Garden of Edinburgh from 31 March to 9 April 2012. The ten days of “cooking, tasting and scientific discovery for all the family”, will feature cooking demonstrations, cookery sessions for children, discussions on science and food and other fun activities.
And on 2 and 3 March the BHL-Europe team will be on hand too to present the Biodiversity Library Exhibition on Spices, as part of the pre-event exhibition. Demonstrations and tastings will be organized, with the national Scottish dish haggis (and the spices used in its preparation of course!) as one of the center pieces.
The free Science on a Plate-exhibition at the RBGE, has been open since 2 February, and informs visitors on where the food on our plate comes from, who is involved in food production and the role science plays in food production. The exhibition also introduces RBGE’s Edible Gardening project which helps people to grow their own vegetables and fruit.
So if you’re interested in food or spices, you would do well to visit Science on a Plate! Or, as the Scottish might say, come awa and try a wee bit of spice…
And on 2 and 3 March the BHL-Europe team will be on hand too to present the Biodiversity Library Exhibition on Spices, as part of the pre-event exhibition. Demonstrations and tastings will be organized, with the national Scottish dish haggis (and the spices used in its preparation of course!) as one of the center pieces.
The free Science on a Plate-exhibition at the RBGE, has been open since 2 February, and informs visitors on where the food on our plate comes from, who is involved in food production and the role science plays in food production. The exhibition also introduces RBGE’s Edible Gardening project which helps people to grow their own vegetables and fruit.
So if you’re interested in food or spices, you would do well to visit Science on a Plate! Or, as the Scottish might say, come awa and try a wee bit of spice…
Spice of the Week: Angelica
The Biodiversity Library Exhibition (BLE) features 52 different spices, and their representation in old biodiversity literature. To celebrate the launch, we’re kicking off a brand new weekly series on this blog. “Spice of the Week” will be just that, a presentation of each spice and just a hint of what the virtual exhibition has to offer.
First up, angelica root. In the middle ages, angelica root was regarded as some sort of miracle ingredient. It was used as an exceptionally effective anti-toxin, and it was one of the ingredients of the legendary “red eye”, a quack remedy that proved to cure all ills. Legends had after all declared angelica to be blessed by the angels and to be given to mankind by the archangel Michael himself.
This history is even reflected in the plant’s scientific names Angelica archangelica and Archangelica officinalis. In both cases, archangelica is derived from the Latin archangelus, meaning archangel. Even today, Angelica archangelica is commonly known under the moniker Holy Ghost.
More on Angelica, including the books it’s featured in and a nice recipe, is found in the Biodiversity Library Exhibition!
Alternate recipe: candied angelica
350 g fresh angelica leaves and stalks
250 g sugar, powdered sugar
Separate leaves from stalks and cut both into 12 cm lengths. Place into an oven-safe bowl. In a separate pan, mix sugar with 300 ml water and bring to a boil. Pour the boiling syrup over the angelica, making sure the angelica is well-submerged. Let stand in a cool place for at least 24 hours. Then move to a pan and boil again, until the stalks and leaves acquire a bright green color. Finally, drain, let drip dry and after thorough cooling, roll in powdered sugar.
First up, angelica root. In the middle ages, angelica root was regarded as some sort of miracle ingredient. It was used as an exceptionally effective anti-toxin, and it was one of the ingredients of the legendary “red eye”, a quack remedy that proved to cure all ills. Legends had after all declared angelica to be blessed by the angels and to be given to mankind by the archangel Michael himself.
This history is even reflected in the plant’s scientific names Angelica archangelica and Archangelica officinalis. In both cases, archangelica is derived from the Latin archangelus, meaning archangel. Even today, Angelica archangelica is commonly known under the moniker Holy Ghost.
More on Angelica, including the books it’s featured in and a nice recipe, is found in the Biodiversity Library Exhibition!
Alternate recipe: candied angelica
350 g fresh angelica leaves and stalks
250 g sugar, powdered sugar
Separate leaves from stalks and cut both into 12 cm lengths. Place into an oven-safe bowl. In a separate pan, mix sugar with 300 ml water and bring to a boil. Pour the boiling syrup over the angelica, making sure the angelica is well-submerged. Let stand in a cool place for at least 24 hours. Then move to a pan and boil again, until the stalks and leaves acquire a bright green color. Finally, drain, let drip dry and after thorough cooling, roll in powdered sugar.
BHL-Europe Newsletter #10
The 10th BHL-Europe newsletter is out! It features reports on several meetings and conferences attended by BHL-Europe consortium members, and a number of articles on the portal development and our dissemination activities.
If you're not yet subscribed or want to check out the newsletter online, do so here.
BHL-Europe Meeting in Helsinki, Finland
From 8 to 10 February 2012, the BHL-Europe team came together in the winter wonderland of Helsinki, Finland to hold a so-called portal & ingest review meeting. We were kindly welcomed by Tiina Onttonen, Sini Kärki and Kimmo Koskinen of the Viikki Campus of the University of Helsinki. They arranged for us to meet and discuss BHL-Europe issues at the Botanic Garden in Kaisaniemi.
One of the most important topics was of course the portal review. A demo of the current portal status was shown, and the developed portal features were reviewed in group. With the end of the project in sight, it’s of course vital that we get all bugs out, and deliver a grade A product. Things fortunately are looking bright, and we seem to be finishing everything in style! Other topics that were discussed were the (pre-)ingest of all content, the lessons learned during the project and the dissemination activities for the official launch.
We also had a few interesting visitors. On 8 February, we met Harri Holopainen, Managing Director of Microtask, to talk about potential collaboration activities. Starting point for this meeting was Digitalkoot, a joint project run by the National Library of Finland and Microtask that makes libraries’ archives searchable on the internet. And on 9 February, Evgeniy Meyke presented the biodiversity information platform EarthCape. More info is found on Evgeniy’s blog.
But since all work and no play makes Jack a dull boy, we also found ourselves having some off time during our Finland stay. Many of us chose to explore the city, hit one of the many bars or go shopping. At night, the entire BHL-Europe team went out for dinner and drinks. On the last day, the bravest among us went for a Finnish sauna and – why not? – ice swimming! More details on that adventure are found on the blog of our American colleague Chris Freeland of the Missouri Botanical Garden.
All in all, the meeting was a success. Thanks again to Tiina, Sini and Kimmo for hosting us!
One of the meeting places was the UniCafe Viola |
We also had a few interesting visitors. On 8 February, we met Harri Holopainen, Managing Director of Microtask, to talk about potential collaboration activities. Starting point for this meeting was Digitalkoot, a joint project run by the National Library of Finland and Microtask that makes libraries’ archives searchable on the internet. And on 9 February, Evgeniy Meyke presented the biodiversity information platform EarthCape. More info is found on Evgeniy’s blog.
The BHL-Europe team |
All in all, the meeting was a success. Thanks again to Tiina, Sini and Kimmo for hosting us!
BHL-Europe launches the Biodiversity Library Exhibition!
You think the content featured in the Biodiversity Heritage Library for Europe is just for scientists? Well, think again. The brand new Biodiversity Library Exhibition provides a virtual tour of literature illustrations that anyone can enjoy.
Each virtual exhibition focuses on a specific topic and its representation in old biodiversity literature. The first exhibition, for instance, focuses on spices and their corresponding literature in the BHL for Europe. Over 52 cards of spices are featured, each with their own illustrations, story and fun trivia. And for all you chefs out there, the BLE even contains useful recipes to try at home!
Each virtual exhibition focuses on a specific topic and its representation in old biodiversity literature. The first exhibition, for instance, focuses on spices and their corresponding literature in the BHL for Europe. Over 52 cards of spices are featured, each with their own illustrations, story and fun trivia. And for all you chefs out there, the BLE even contains useful recipes to try at home!
Or are you more interested in the extraordinary stories behind some of the most spectacular expeditions ever organized? Then the second exhibition, which focuses on historical expeditions, is something for you! By means of trivia, summaries, diaries, and of course illustrations, the BLE makes these splendid stories accessible to the greater public. The voyage of the Beagle, the exploration of North and South-America, or even the conquest of Mexico … they’re just a few examples of what the expedition BLE has to offer.
A central feature of each exhibition is the “Find me in books”-application. A simple click will direct you to the BHL-Europe, and the literature featuring the spice, expedition or illustration of your interest. If you can’t wait to visit the Biodiversity Library Exhibition, just take a look at http://www.biodiversityexhibition.com/.
BHL and its developers: Chris Sleep
We’re kicking off a brand new series on the blog. In “BHL and its developers”, we meet some of the staff dedicated to setting up the technical components needed for the project. First up: Chris Sleep from the Natural History Museum in London!
Can you tell us something about your work and involvement in BHL-Europe?
My initial involvement with BHL-Europe was with respect to the hardware; the BHL-Europe services are run on an array of machines and storage which is physically hosted here at the NHM in London, where I was involved in the installation and initial configuration. Since then I’ve become more deeply involved with BHL-Europe with the departure of the previous Workpackage 3 leader I’ve up the technical side of the role working closely with Graham Higley the formal WP3 lead, and Lola Obajuluwa who provides our Project Management.
What has been the biggest challenge the developers have faced?
The biggest challenge for BHL-developers so far is the fact that we live in many countries around Europe. Most of the time, every office or institution in the different countries has just one developer – but in our work we all depend on each other. We all need clear sight of what each other are doing and what changes have been done, so that our work builds upon a common base.
So finding a way of raising issues and problems, and discussing and resolving them, was absolutely critical. And we had to do this in a fashion so that wherever we are (be it in a workshop, meeting, conference etc.), we all have access to the information we needed!
So what did you come up with to solve this problem?
The project is one of implementing best practice standards, so the choice for the development environment moved towards a best practice scheme. More specifically, we set up GitHub, which is a code repository where we keep all our source code. This repository is tied to a GitHub issue tracker, where we can raise issues and problems.
Basically, GitHub is a revision source control system. A developer works on the system on his own machine, and “commits” the code if it’s good. This means that changes they’ve made are written up in the GitHub repository, and GitHub keeps track of these changes and what has been done by whom and when.
Can you give some more info on the GitHub issue tracker?
In short, the issue tracker is a database that’s related to the features we’re building and the bugs associated with them. Issues, such as bugs, are attached to particular milestones. When those issues are closed, they are moved to a test milestone and reopened for testers.
When was GitHub implemented?
We started moving the code in GitHub back in June 2011. In August 2011, we linked the code deployment up with Jenkins. We’ve been working with it for the last three to four months.
Before June 2011, we had to build both our integration site and our test site by hand. Developers worked locally on their machines, sent me their codes and then I put everything into place. This caused us a lot of waiting and delay before we could see the developed code. GitHub thankfully is a powerful tool that helps speed up development!
Can you tell us something about your work and involvement in BHL-Europe?
My initial involvement with BHL-Europe was with respect to the hardware; the BHL-Europe services are run on an array of machines and storage which is physically hosted here at the NHM in London, where I was involved in the installation and initial configuration. Since then I’ve become more deeply involved with BHL-Europe with the departure of the previous Workpackage 3 leader I’ve up the technical side of the role working closely with Graham Higley the formal WP3 lead, and Lola Obajuluwa who provides our Project Management.
What has been the biggest challenge the developers have faced?
The biggest challenge for BHL-developers so far is the fact that we live in many countries around Europe. Most of the time, every office or institution in the different countries has just one developer – but in our work we all depend on each other. We all need clear sight of what each other are doing and what changes have been done, so that our work builds upon a common base.
So finding a way of raising issues and problems, and discussing and resolving them, was absolutely critical. And we had to do this in a fashion so that wherever we are (be it in a workshop, meeting, conference etc.), we all have access to the information we needed!
So what did you come up with to solve this problem?
The project is one of implementing best practice standards, so the choice for the development environment moved towards a best practice scheme. More specifically, we set up GitHub, which is a code repository where we keep all our source code. This repository is tied to a GitHub issue tracker, where we can raise issues and problems.
Basically, GitHub is a revision source control system. A developer works on the system on his own machine, and “commits” the code if it’s good. This means that changes they’ve made are written up in the GitHub repository, and GitHub keeps track of these changes and what has been done by whom and when.
This is all tied to a component called “Jenkins”, a continuous integration tool that is on the integration server here at the Natural History Museum. You could say that Jenkins “watches” GitHub, and that whenever a change goes through Github, Jenkins grabs it, refreshes the databases and puts the change live so that people can immediately see on the NHM server what the BHL-Europe portal looks like! Similarly, all developers can synchronize GitHub, i.e. pull back changes from GitHub to their machine and know that other developers will do so as well. So even if we’re out of office and working on different machines, we can always work with the other changes that have been done!
In short, the issue tracker is a database that’s related to the features we’re building and the bugs associated with them. Issues, such as bugs, are attached to particular milestones. When those issues are closed, they are moved to a test milestone and reopened for testers.
It’s also worth noting that GitHub is an Open Source Free License tool; it’s available to all members of the team and the public. Thanks to GitHub, testers can – if they want to - see the thinking that went on in the implementation. The background info is all there – and it’s not hidden in someone’s email inbox.
When was GitHub implemented?
We started moving the code in GitHub back in June 2011. In August 2011, we linked the code deployment up with Jenkins. We’ve been working with it for the last three to four months.
Before June 2011, we had to build both our integration site and our test site by hand. Developers worked locally on their machines, sent me their codes and then I put everything into place. This caused us a lot of waiting and delay before we could see the developed code. GitHub thankfully is a powerful tool that helps speed up development!
Subscribe to:
Posts (Atom)