Showing posts with label drupal. Show all posts
Showing posts with label drupal. Show all posts

Monday, 2 September 2013

Deleting all nodes of a content type using drush and devel

While developing the open source data logger (started here but expanded to post from Arduino to Drupal) the need to regularly delete all content of a given type arises fairly regularly. This can be done through the user interface with the Devel module but it is much quicker to use Drush:

drush genc 0 --kill --types=article

Thursday, 28 February 2013

A few more jobs in biodiversity informatics projects at Natural History Museum

You can find more about all jobs and apply online here.

Drupal Developer

The Natural History Museum is looking to recruit a Drupal Developer to work on the Scratchpads project (http://scratchpad.eu), which is based on the Drupal (http://drupal.org/) content management system. The role encompasses the development of content, theming and functionality for new and existing PHP and Drupal systems and applications.

Scratchpads are a web-based informatics tools written using Drupal. They allow distributed groups of biodiversity scientists to create their own virtual research communities on the Web. The successful applicants should be able to work on their own initiative and be proficient in theming, coding, configuring and doing quality assurance on Drupal based websites. Mentored training and support will be provided. You will work with members of the developer and user community (research scientists, software developers and organisations) to manage and parse biodiversity data, in addition to helping with the design, construction and testing of Drupal modules and sites. The project includes opportunities for international travel to meetings, workshops, conferences and presentations as a member of the Scratchpad development team.

A bachelor’s science degree (or equivalent) and previous experience in Drupal web development is also essential for this post.

Salary:  £37,564 per annum plus benefits

Contract: Fixed term appointment (9 months)

Closing date: Midnight on Thursday 7 March 2013


Role competences:

  • A bachelor’s science degree (or equivalent)
  • Previous experience in Drupal web development (version 6 and 7). We require evidence of Drupal websites that the candidate has developed.
  • Hands on experience configuring Views, CCK, and other contributed Drupal modules
  • Hands on experience configuring the Drupal CMS for use by non-developers to add and edit the content
  • Experience with PHP, MySQL, Drupal, SQL, XML, HTML and CSS.
  • Knowledge of jQuery/Javascript is highly desirable
  • Experience of Linux is also highly desirable
  • Experience with Drupal theming and CSS is highly desirable
  • Familiarity with other programming languages (e.g Java) in addition to PHP would be useful but not essential
  • Familiarity with natural history (biodiversity, taxonomy, systematics) would be advantageous but not essential

 

Front-End Developer  

The Natural History Museum is looking to recruit a Front End Developer to work on integration of the Museum collections digitisation projects. The role encompasses the design and development of the front end of a web application to interface with the Museum’s collections management system, KE-EMu, which will allow the quick and easy addition of multimedia and associated meta-data. KE-EMu is a collections management system designed specifically for natural history museums and other special collections.

The successful applicants should be able to work on their own initiative and be proficient in producing beautifully designed and intuitive web applications. Mentored training and support will be provided. You will work with members of the developer and user community (research scientists, software developers and organisations) to identify the key software requirements. The project includes opportunities for international travel to meetings, workshops, conferences and presentations as a member of the Natural History Museum’s development team.

This is a fixed term appointment for twelve months, but with the possibility of a contract extension.

A bachelor’s science degree (or equivalent) and evidence of websites and web application components that you have developed are also essential for this post.

Salary: £36,986 per annum plus benefits

Contract: Fixed term appointment (12 months)

Closing date: Midnight on Thursday 7 March 2013

Role competences:
  • A bachelor’s science degree (or equivalent)
  • Previous experience in HTML5 web application development
  • Experience with systems analysis
  • Experience working with a back end developer to produce fully featured intuitive web applications
  • Extensive experience with JavaScript libraries, such as jQuery, MooTools, Dojo, Prototype, Backbone.js
  • Experience working with a front-end frameworks, such as Bootstrap, Cappuccino.
  • Extensive experience cross-browser testing and producing sites that conform to the WCAG 2.0
  • Experience in prototyping, designing and creating clean and intuitive web application user interfaces
  • Ability to produce designs that are simple, elegant and scale well across screen sizes
  • Experience developing user documentation, training and application testing
  • Fluent in software such as Photoshop, Illustrator, Fireworks

 PHP Developer

The Natural History Museum is looking to recruit a PHP Developer to work on integration of the Museum collections digitisation projects. The role encompasses the development of a web application to interface with the museum’s collections management system, KE-Emu, which will allow the quick and easy addition of multimedia and associated meta-data. KE-Emu is a collections management system designed specifically for natural history museum and other special collections. It has a well-documented API that will enable the successful applicant to build and integrate a web application to support museum digitisation workflows.

The successful applicants should be able to work on their own initiative and be proficient in producing well-documented and tested code. Mentored training and support will be provided. You will work with members of the developer and user community (research scientists, software developers and organisations) to identify the key software requirements. The project includes opportunities for international travel to meetings, workshops, conferences and presentations as a member of the Natural History Museum’s development team.

This is a fixed term appointment for twelve months, but with the possibility of a contract extension.

A bachelor’s science degree (or equivalent) and evidence of websites and web application components that you have developed are also essential for this post.

Salary: £36,986 per annum plus benefits

Contract: Fixed term appointment (12 months)

Closing date: Midnight on Thursday 7 March 2013

Role competences:
  • A bachelor’s science degree (or equivalent)
  • Previous experience in Drupal web development (version 7) or extensive experience with an alternative PHP framework. We require evidence of websites and web application components that the candidate has developed.
  • Experience of systems analysis and systems integration, interfacing with external services via APIs.
  • RDBMS experience, ideally one or more of the following: MySQL, PostgreSQL,MSSQL
  • Experience with NoSQL databases, such as MongoDB, CouchDB
  • Experience working with a front-end developer to produce fully featured intuitive web applications.
  • Knowledge of optimising PHP code, especially when interfacing with external services
  • Experience with unit testing and systems integration testing
  • Experience of command line Linux server administration is highly desirable, including knowledge of command line software like ImageMagick
  • Familiarity with other programming languages (e.g. Java) in addition to PHP would be useful but not essential
  • Familiarity with natural history (biodiversity, taxonomy, systematics) would be advantageous but not essential

Wednesday, 16 January 2013

Biblio autocomplete

A new Drupal module: Biblio autocomplete.



Previsoulsy as part of eMonocot we started to use the IPNI webservice to autocomplete some fields in the Biblio content type. As one of the eMonocot objectives is to "Ensure that the tools developed are compliant with zoological nomenclature" I have extended this functionality to use the ZooBank API which is currently in a testing phase. In addition values for the autocomplete suggestions can be made from values previous entered in other Biblio nodes.

Instead of having either previsously entered values, IPNI or ZooBank attempt to autocomplete the field this module has been developed to allow any combination of these plugins to attempt the autocompletion. This will have uses in cases like the recent Lyme Regis Geo-BioBlitz where a single classification spand both animal and plant kingdoms (in this case the Dictioanry of UK Species).

The module is designed so that additional plugin modules can easily contribute results for other webservices.

This work was done as part of eMonocot as a contribution to the Scratchpads project.

Thursday, 22 November 2012

ViBRANT Citizen Science Workshop (24-25 January 2013)

Organised by Ed Baker (me) & Sarah Faulwetter to set a framework for future development of the Scratchpads BioBlitz profile (demo site) and the HCMR's ViBRANT deliverable of a Citizen Science module for Drupal.

Workshop Day 1: What can we learn from successful citizen science projects?

Morning (workshop participants & invited NHM staff)

Presentations from successful citizen science projects (background to the project and what has made them successful)

Afternoon (workshop participants)

Round table discussion on how ViBRANT and Scratchpads can participate in citizen science with emphasis on:
  • What would be useful for us to do and how we might be able to engage with existing projects?
  • What user-groups exist, how are they served by existing projects, and who can Scratchpads/ViBRANT target?
  • What are the outcomes of these projects (fun/educational awareness/scientific data)?
  • What quality of data can be collected?
  • How can data gathered be reused (Biodiversity Data Journal/GBIF/EoL)?

Workshop Day 2: Creating a citizen science plan for Scratchpads & ViBRANT

ViBRANT attendees

  • Development plan for HCMR’s citizen science module and can we incorporate it into the BioBlitz profile
  • Can we incorporate citizen science tools into Scratchpads in general (e.g. crowdsourcing image transcription).

Sunday, 18 November 2012

Playing with Flickr and CartoDB

Last Friday we had a ViBRANT sponsored workshop about CartoDB, the open source mapping and visualisation product from Madrid/New York based Vizzuality. The context of the workshop was possible integration of CartoDB with the Scratchpads and OBOE projects in the context of visualising biological datasets. The notes for the workshop demonstrations are here and are what the work done here is based on.

Not having a suitable dataset to hand I have been playing with making maps of the photos I have shared on Flickr. Flickr does provide a map view of a user's photographs (here's mine) although it is very limited in functionality - and unless you only have a handful of photographs you can't get a map view of all of your photographs.

I have previously visualised my Flickr stream by hacking the Drupal flickrsync module to save geolocation data with the Location module. Even with clustering the map points for 7,000+ images the results are slow to load: Drupal Flickr map of my photographs. The plus side of this work was that with just modifying the output of the view I could get a CSV file of my Flickr stream which I easily imported into CartoDB.

The basic map produced by CartoDB from this file is below:

Next I wanted to make a map of countries that are represented in my Flickr stream (perhaps I really wanted to play with PostGIS and polygons). This required downloading a shape file of all the countries from thematicmapping and uploading the file to a new table in CartoDB (CartoDB will accept the URL to the zip file so you can do it without downloading the file if you choose). The following SQL was applied to the world countries table:

This results in the following map:


Finally using some PostGIS I was able to make this map a little more accurate by splitting the countries into separate polygons (e.g. separating Hawaii from the continental United States, Northern Ireland from Great Britain).


Here's the new map:
 

Thursday, 8 November 2012

Drupal Developer | Natural History Museum, London

Become part of an expanding team of developers working at the cutting edge of information science and biodiversity research. The Natural History Museum London is recruiting a Drupal developer (fixed term until end of November 2013, £34,853 per annum plus benefits) to work on the Scratchpad project (http://scratchpads.eu) as part of a major effort to help researchers share and manage biodiversity data on the Web.

Key tasks and responsibilities include:

•   Development and support of Drupal Modules and Themes

•   Data parsing and content construction

•   Supporting users in the development of their sites

•   Interfacing with the user support team

Applicants should be able to work on their own initiative and be proficient in module development, theming and quality assurance. Mentored training and support will be provided. Successful applicants will work with members of the developer and user communities to manage and parse biodiversity data, in addition to helping with the design, construction and testing of Drupal modules and sites.  The project includes opportunities for international travel as part of the development team.

Applicants should have at least 1-2 years experience in Drupal development (version 6 & 7) with hands on experience configuring Views, CCK and other contributed Drupal modules. This includes working with PHP, MySQL, SQL, XML, HTML and CSS. If you have a profile page on Drupal.org, please make reference to this within your application along with Drupal websites you have developed.

For job specific enquiries contact s.rycroft@nhm.ac.uk

Absolutely, Positively, Strictly - NO RECRUITMENT AGENCIES.

For a full job description and to apply online please visit the Natural History Museum website. http://www.nhm.ac.uk/jobs

Closing date: 30th November 2012

Monday, 9 July 2012

Two new Drupal developer posts (closing today)

Become part of an expanding team of developers working at the cutting edge of information science and biodiversity research. The Natural History Museum London is recruiting two junior/mid-level Drupal developers (18 month contracts, £34,508 per annum plus benefits) as part of a major effort to help researchers share and manage biodiversity data on the Web.
Key tasks and responsibilities include:
  • Development and support of Drupal Modules and Themes
  • Data parsing and content construction
  • Supporting users in the development of their sites
  • Interfacing with the user support team
Applicants should be able to work on their own initiative and be proficient in theming, coding, configuring and quality assurance. Mentored training and support will be provided. Successful applicants will work with members of the developer and user communities to manage and parse biodiversity data, in addition to helping with the design, construction and testing of Drupal modules and sites.  The project includes opportunities for international travel as part of the development team.
Applicants should have at least 1-2 years experience in Drupal development (version 6 & 7) with hands on experience configuring Views, CCK and other contributed Drupal modules. This includes working with PHP, MySQL, SQL, XML, HTML and CSS. If you have a profile page on Drupal.org, please make reference to this within your application along with Drupal websites you have developed.

For job specific enquiries contact vince@vsmith.info. For a full job description and to apply online please visit the Natural History Museum website. http://www.nhm.ac.uk/jobs

Absolutely, Positively, Strictly - NO RECRUITMENT AGENCIES. Closing date: 9th July 2012

Sunday, 24 June 2012

Adding Biblio fields programmatically in Drupal 7

Previosuly I showed how to create a new Biblio type in Drupal 7 - this code covers the next step: adding additional Biblio fields to a Biblio type in code.


Monday, 4 June 2012

Biblio Scholar

Various Scratchpad sites I work with, most notably the International Commission on Zoological Nomenclature (@ZooNom) and the Natural Sciences Collections Association (@Nat_SCA) both use Scratchpads as a platform the online components of their journals (Bulletin of Zoological Nomenclature; NatSCA News).

In order to provide some increased metadata to aid search engines in indexing this kind of content I wrote the Biblio Scholar module for Drupal which provides some metadata that may be used by Google Scholar (see Inclusion Guidelines) and potentially other services.

Some more background to the Biblio Scholar project.

Friday, 1 June 2012

Creating a new biblio type programatically in Drupal 7

How to create a new biblio type in code in Drupal 7:


This is just a modification of the function biblio_admin_types_add_form_submit($form, &$form_state) and run during install of the custom module (using hook_install() ).

Managing Scratchpads tools in eMonocot

Originally published on the eMonocot blog: Managing Scratchpads tools

As I mentioned before, one of the things that tailoring Scratchpads to a particular community or project allows us to do is to develop functionality that is specific to that community or project. Within the eMonocot project we have developed some functionality that is useful across all of the eMonocot Scratchpads (e.g. the IPNI webservice) while other parts (e.g. the Swiss Orchid Foundation images) are useful only to a few of the Scratchpads.
In order to allow site maintainers to pick and choose which subset of these functions they would like I have added a number of the optional fetaures to the Scratchpads Tools feature to make it easy for site maintainers to add/remove these functions with a single click.
eMonocot tools

Wednesday, 30 May 2012

Create Drupal 7 biblio nodes programatically

The biblio module for Drupal is almost certainly essential for anyone trying to use Drupal as a platform for doing science. It is a large module with lots of functionality but parts of it are pretty badly documented (that is: you can read through the code but just Googling might not throw up what you need).

 The first issue - how to create a biblio node programatically (that is: in code).


Some things to note:

1) You must set the type of the biblio you wish to make (Journal Article, Book chapter, etc) before the call to node_object_prepare().

2) To set the authors you must set $node->contributors as an array (like that above) and also call biblio_insert_contributors($node).

The above example sets only a fairly minimal  number of the biblio fields, but any of the biblio fields may be set using this method.

The field 'start page' in biblio entries is for some reason stored in the field biblio_section (that's not an error in the code above)l.

Saturday, 12 May 2012

Augmented reality for Geology part 2

A while ago a wrote about augmented reality for geology. The aim was to use the open source Drupal content management system to provide an easy to use graphical interface for the augmented reality app Layar (which is both iOS and Android compatible).

At the 2012 Lyme Regis Fossil Festival we (The Buckland Club in collaboration with the Lyme Regis Development Trust)  finally managed to try out the app with the public, where it was received with enthusiasm (for some of the background to this project as well as some of the technical specifications see Writing a specification for our first Digital Asset).

One of the major issues with deploying a functional app in this environment is the lack of both wireless and 3G access. Even throughout the town there are many black spots where it is impossible to get signal of any kind on a wireless device.

The solution to this was to install a number of long range WiFi links between places in the town that had and were willing to share their internet connection and the places that we wished to test our apps with the public. Working with Victor and Pau from the Quick Mesh Project we managed to create a network of four WiFi nodes, including a battery powered portable node that could be used on the beach between tides.

IMG_8886
Pau, Victor and I installing a WiFi node on the roof of the Marine Theatre, Lyme Regis.

I will write more about what we have been up to in Lyme Regis soon.

Thursday, 15 September 2011

Parent/child spreadsheet from Drupal taxonomy

So I don't forget:


[EDIT] This doesn't get the root term of a classification (one with no parent) - see comments for a way that does.


Thursday, 10 March 2011

Augmented Reality for Geology (a Drupal approach)

Yesterday in a discussion with Jeremy Young we thought about the concept of having an augmented reality app that would point out a few major points of interest in Lyme Regis (we'll be down for the Fossil Festival again this year). The discussion came from playing with the Layar app, for which it is possible to provide custom data layers.

As there will be a few of us around at the festival this year (many of us living in an iPhone augmented world) I thought the idea was worth investigating a little bit more. The first challenge was to provide some kind of editing environment where we could collaboratively provide the relevant co-ordinates, altitude, text and image. Thanks to the Layar module for Drupal this was achieved pretty easily - adding items to the augmented reality layer becomes just as simple as filling out a form.


I created a handful of Points of Interest (including The Whole Hog - perhaps the world's best sandwich shop) and then submitted the necessary details to the Layar team (the layer is currently still awaiting approval).

The next issue was how we could add points (including photographs) while roaming around the town and seashore. The obvious answer was the ubiquitous iPhone (other smartphones are available), but mobile Safari doesn't allow uploads to websites.

The solution was Flickr (I use it to manage almost all my photographs). The Flickr app is easy to use and can upload photographs complete with titles, descriptions, location data and tags. Importing data from Flickr was achieved using a version of the FlickrSync module I had previously hacked to import geolocation data. The system can be set to only import photographs with specific tags - an easy way to only get the data I want. Individual users of the site will be able to associate their Flickr account and specify what tags they want to use to label items for inclusion in the layer.

I have also made an overview map that shows the points of geological interest around Lyme Regis that have been collected so far.

All in an evening (and a half)'s work.....

Sunday, 13 December 2009

Bioinformatics and Norwegian pop bands

In the supplementary file to the recent paper on the Scratchpads project published in BMC Bioinformatics the Drupal module ahah_action apparently has the functionality required to provide 'a Norwegian pop band'.

Friday, 20 February 2009

Blogger feeds and Drupal 6 Aggregator Issue

If you want to import Blogger feeds using the Drupal 6 Aggregator (core module) then you must use the RSS feed (just add "/feeds/posts/default?alt=rss" to the end of your blog's URL). If you don't then the aggregator will list posts correctly, but the links will all be to the same post.

ShareThis

Copyright