More and more people are starting to build websites to help people become more powerful in their civic and democratic lives. Some of these are on codebases that mySociety has created which is so great. There are some things which we would love to happen when you take our code and re-use it.
We want people using our code to keep it as up to date as they can, so that they gain the benefits of any changes made to the code by us or by other users. There are a few reasons for this:
You can co-brand the site without breaking anything.
Dave, one of our developers, explains how you do this. “So suppose, instead of calling it FixMyStreet you want to call it FixMyBorchester with a Borchester logo. Obviously this is a very real requirement, because people want to rebrand. One very feasible (but wrong! As you’ll see…) way of doing this is downloading the FixMyStreet code, finding the bit that paints the FixMyStreet logo and replacing it with the words <h1>FixMyBorchester</h1> and an image. This would work as far as the FixMyBorchester branding would appear on the site.
But if you then saved and committed your change to git and passed it back to us as a push request, we would reject it. This is for the obvious reason that if we didn’t, next time we deployed FixMyStreet in the UK it would have your logo on it.
However, say we suddenly discover there is a bug with FixMyStreet. For (a bizarre) example, if someone put the number 0 in instead of a postcode and the site returns a huge picture of a kitten. We love kittens, but that’s not what the site is trying to do. So, we make some fixes to the code that rejects zeros, commit it, update the repo, and it’s now there on the master branch. We write to everyone saying “really everyone, update to the latest (most up-to-date) place on the master branch” And you think, “yeah OK!” and you download the latest version.
If you just download it and copy it into place, you’re going to lose your FixMyBorchester changes, because there’s a more recent version of that file from us that hasn’t got them. If you did a “git pull” (which roughly means, “git! get me the latest version of master branch”) then git will refuse because there’s a conflict on that file.
So, instead of inserting your FixMyBorchester stuff over ours, which can’t work, you make a new directory in the right place called ‘FixMyBorchester‘, put your stuff in there and switch the FixMyStreet config — which knows this is something people want to do — to use that cobrand. Any templates FixMyStreet finds in there will now be used instead of ours. You can now safely update the codebase from our repo from time to time and FixMyStreet and git will never damage your templates, because they are in a place it doesn’t mess with.”
You can add new features
Dave continues. “Say when someone uses FixMyBorchester it’s essential that you have their twitter handle, because every time a problem is updated, FixMyBorchester direct-tweets them a kitten for fun. Right now there is no capacity to store a twitter handle for a user in FixMyStreet.
You simply add a column to the users table in your database and add some code for accepting that twitter handle when you register, and sending the kittens etc. That’s new code that isn’t in FixMyStreet at all. Sooner or later you’ll need to put at least one line into the main FixMyStreet program code to make this happen. As soon as you do that you have the same problem we had before, only this time it’s in code not in an HTML template.
What we would encourage you to do is put all your new code in a branch that we can look at, and maybe set it to run only if there’s a config setting that says USE_TWITTER=true. That way any implementation that doesn’t want to use twitter, which is — at this point — every other FixMyStreet installation in the world — won’t be affected by it. You send that to us as a pull request and a developer checks it’s not breaking anything, and is up to scratch in quality, and has good test coverage. Then we’ll accept it.
Even though currently nobody else in the world wants your twitter feature, it’s not breaking anything and it’s now in the repo so you can automatically update from our master when we change bits of our files, and the installation/overwrite/git-pull will work. Plus anyone that does decide they want this feature will now be able to enable it and use it.”
And all of this helps everyone using the code; you have a secure website that can be patched and updated each time we release something, other people have access to features you’ve built and vice versa. And overall, the project becomes more feature rich.
Please do make changes and push them back to the main codebase!
Image credit: US Coast Guard CC BY-NC-ND
A lot of people come to mySociety to reuse our code having seen the UK websites, which is great! Then you can see what we’re trying to do in the UK and how you could replicate it abroad. But what I wonder, and what lead me to write this blog post, is are we reining in your imagination for what these platforms could be used for?
9 times out of 10, when someone contacts me about FixMyStreet, it’s for street reporting problems. Naturally, it’s in the name of the platform! But we do get the occasional request to use it differently, which is something we’re really keen to explore. Here are some things I think it could be used for, that aren’t street related:
1) Antiretroviral Drug shortages in clinics in Africa.
The background: 34% of the world’s HIV positive population currently live in Southern or Eastern Africa . These people need antiretroviral drugs to survive, some of which could be supplied by the Government’s medical stores, some of which could be supplied by charities, but it is often reported that there are shortages of drugs at some clinics 
The concept: A mobile responsive FixMyStreet site which health clinic staff can use to report the status of their stock to the relevant supplier. The site would instantly send an email to the clinic supplier when the staff member dropped a pin on their clinic on a map in the site. There could be different alert categories such as “stock running low”, “stock critically low” and “Out of stock”
Impact it would hope to achieve: The aim would be to enable clinics to report on the status of their stock far enough in advance that the supplier could order and deliver stock before they hit the Critically low or Out of Stock status. This would mean that people would always be supplied with ARVs if they need them. Another point would be that patients could check the map to see if the clinic in their area has stock of the ARVs they need, and potentially choose another clinic if there is a shortage.
The background: It’s no surprise to anyone to hear that some species of wildlife are under threat. Wildlife conservation charities, like the Royal Society for the Protection of Birds (RSPB), annually monitor population levels for endangered species  to ensure they have accurate data on population growth or decline and the lifestyles and habitats of the wildlife they are aiming to preserve.
The concept: A mobile responsive FixMyStreet site which allows people to report sightings of endangered animals to wildlife conservation charities. The site would be tailored for area (eg the endangered animals native to certain countries) or could simply be per species (eg mammals, avians etc). The public would then be able to take a picture of the animal, attach it to the report and leave a short message, like “2 adult bitterns accompanied by young seen at 10:41am). The report will give the charities the location the animal was spotted in and they will be able to add this to their research data.
Impact it would hope to achieve: Hopefully this idea would contribute valuable data to the research of Wildlife Conservation charities. Another hope is that it would make people more interested in the wildlife in their surrounding area, thus more involved in conserving it and its habitat.
3) Reporting polluted Waterways
The background: You may have seen the reports from China earlier this year about the dead pigs found in the Huangpu River . It’s not just a Chinese phenomenon: around the world rivers, canals and lakes are becoming more and more polluted.  In fact the statistics coming from the UN are quite shocking. This not only has a harmful effect on wildlife in the river, but could lead to longer term issues with clean drinking water, especially in countries where cleaning polluted water is an expensive option.
The concept: This is very similar to the classic FixMyStreet. A website would be set up where a person could submit a photo and report of a polluted waterway by dropping a pin on a map at the position of the river. This report would then get sent to the local council or persons responsible for caring for the waterway.
Impact it would hope to achieve: Similarly to FixMyStreet in the UK, this would help to get citizens more actively involved in their local area and government. The idea would also be that the council would hopefully start dedicating more resources to clear rivers and waterways. Or local residents could form a group to remove litter themselves. In the case of chemical or oil spills this would obviously not be advised. However if chemical waste or oil spillages were noticed to be originating from specific buildings then the council would have the opportunity to bring this up with the residents or companies in these buildings.
So those are some of my ideas! What are yours?
We’re actively looking to support non-street uses of FixMyStreet so please do get in contact on email@example.com with your ideas and we’ll work together to see how we can achieve them!
Oh, and, don’t worry if you still want a classic FixMyStreet, we’ll help you with that too!
 Orangutan by Matthew Kang
 Primary colours by Vineet Radhakrishnan
Last week, FixMyStreet gained a number of new features that we hope you will find useful.
Firstly, we’ve thrown away our old maps and replaced them with new, shiny, zoomable maps. This should make it easier for people to find and report problems, especially in sparser locations. We’re using the OS StreetView layer (hosted internally) when zoomed in, reverting to Bing Maps’ Ordnance Survey layer when zoomed out, as we felt this provided the best combination for reporting problems. In urban areas, you can still see individual houses, whilst in more rural areas the map with footpaths and other such features is probably of more use. FixMyStreet tries to guess initially which map would be most appropriate based upon population density, meaning a search for Stroud looks a bit different from that for Birmingham.
OpenStreetMap fans, don’t worry – as part of our mapping technology upgrade, you can now use osm.fixmystreet.com to access your favourite mapping instead.
Secondly, we now have user accounts. We’ve rolled these out alongside our current system of email confirmation, and it’s up to you which you use when reporting a problem or leaving an update. This means that those who come to the site one time only to report a pothole can continue to do so quickly, but have the option of an account if they want. Having an account means you no longer have to confirm reports and updates by email, and you have access to a page listing all the reports you’ve made through FixMyStreet, and showing these reports on a (obviously new and shiny) summary map.
Other improvements include a much nicer All Reports section, so you can see all reports to Adur District Council on a map, paginated and with the boundary of the council marked – and individual wards of councils now each have their own pages too.
I’ll follow up this post with another, more technical, look at the maps and how they work, for anyone who’s interested
Sejmometr.pl team is currently working on iPad and iPhone version of the portal. While working on this part of the project the team has asked a Polish blogger, Krystian MacKozer Kozerawski to post about this initiative and encourage readers to share their input as to how the applications should look like.
Some of the commentators of this partucular blog post share their overall feedback on the idea, like Tomasz:
“I really like the idea of the app, I am going to use it (I hope it is going to be free ).”
Some comments contain valuable input for Jakub, who is promptly responding to it too:
Qba: “I am not sure how realistic that is but apart form the overall results of votings I would like to be able to view how (or it at all) voted a particular MP (unless it’s doable on the website).”
Jakub: “It’s possible on the website and we will add it to the apps. Thx!”
Others suggest solutions that might prove useful for the portal itself:
Marcin: “In stats of particular MP’s we could do with 4 lists of acts they have voted on, I meanW statystykach danego posła przydałyby się 4 listy ustaw za jakimi głosował tj. za, przeciw,wstrzymał się i lista ustaw na których głosowaniu się nie stawił.”
Jakub: “@Marcin – dobre! Wstawimy tez pewnie do normalnej wersji!”
As you can see, posting about your planned developments in the right channels can generate a bit of valuable feedback and promotion! Do share your work with your regional audiences and let us know how you have benefited from it!
International collaboration is crucial in work on cloned of the same tool – in this case we are talking about WriteToThem. Jaroslav from KohoVolit team has posted great update on their current work with application prepared in Lithuania by the Parašykjiems team:
“We have also installed the necessary platform for Lithuanian WTT – Parašykjiems, the source code itself and after a short fight get it running on the localhost. A small error needed to be fixed. I am getting familiar with the application as well as the Python+Django platform and hopefuly start soon with customization for Czech republic.”
The team is testing a scraper of data and updater for Senate. The updater of Chamber of Deputies is ready and working, so with this bit done they should have it ready for the entire Czech Parliament.
KohoVolit team has done great job in bringing together 20 celebrities on a screen of their promotional video for NapisteJim.cz – chech WTT. The official launch is planned for tomorrow, so we hope to hear more about it. In the meantime, check out the photos and watch out for the video on their blog!
How do you promote your project? Let us know!
Great idea, great work!
Update: We have just been told that the launch was moved forward to the 26th of May.
As a result of our work with KohoVolit.eu we have been able to get in touch with few regional projects dedicated to government transparency. Today I would like to introduce you to Dotankoch.sk, Slovakian parliament watchdog. To do so, I got in touch with Dusan Zelenik, who works on this project. Enjoy!
Sylwia: What are the main goals of your project?
Dusan: The main goal of dotankoch.sk is to provide simple, easy-to-understand presentation of happening in the slovak parliament. We want to bring information to regular people and help them to find out more about politicians, parties etc. We want to change the role of electors who are affected by press or election campaign to informed and responsible electors. At this site, you can see many statistics such as attendance, loyalty, participation in lawmaking, activity during discussions etc. We also provide a search engine which allows you to search in debates which were taken in parliament. We actually download data from the official site of slovak parliament and transform to make information more understandable, compact and visual.
Sylwia: How big is the team working on the project?
Dusan: There is no official team, because lot of people help just by discussing the project (like the PeWe group at fiit.stuba.sk). However, the core team consist of 4 people and the major part was made by single person.
Sylwia: How is the public using your website?
Dusan: DoTankoch.sk is mainly designed for electors and their need to find out more about politicians and their activities. However, also press is interested in aggregation we made, because it is often relevant in reports etc. We are glad that also chief of our parliament (Richard Sulik) finds this site very interesting. Maybe it is because alternative mechanism, which allows him to control parliament and happening there.
Sylwia: What are the major challenges of your project?
Dusan: Well, our challenge is to attract as many visitors/electors as it is possible. We want to change our country by helping electors to decide responsibly with some knowledge about parliament and politics.
Check out the project website here.
Valon has sent us a quick update on their project too. In terms of the international development:
“There are quite a few bugs in Internationalized (i18n) version of the WDTK code. Seb and Faton are testing and fixing them. Also Faton did some tweeks for Kosovan specific code.”
As for the local site:
“I have translated most of the strings in Albanian, I’m hoping to finish it in a few days.”
There is also news on the project of mapping of public institutions:
“The project has been approved last week and we will move forward very soon. I have spent some time last week helping our young team members with administrative and scheduling stuff.”
Sejmometr.pl team submitted the website to the Polish bookmarking engine Wykop. As a result of it the traffic to the site increased drastically as below (data from 4 and 5th of April):
The original Wykop page contains really positive responses. Maniaks posted:
“Generally mega useful website, one can realyl easily check what MP’s are up to. Bookmarked.”
“O_o really?!… Maybe it’s time for democracy to work? Man (meaning the one behind the site), this is a brilliant tool!”
Content of comments proves that users test the features, flag up potential issues (and praise Daniel’s prompt response to those) and look forward to more developments on the site. Team’s reaction?
“We are even more motivated to work on this further. Thank you!”
We have posted that the Czech parliament data still needed to be incorporated in the development of scraping process of KohoVolit.eu structure. Jaroslav posted an update yesterday stating that this part of work, mainly the part for the data of Lower House of Czech Parliament is ready now:
“The updater scraping the data from the Lower house of Parliament of Czech republic and storing them into KohoVolit.eu database structure is ready now. The downloaded and processed information include MPs data (personal data, image, contact information, assistants, office), constituencies, groups (political groups, committees, commissions, etc.), membership of the MPs in those groups and roles they stand. All those data will be updated nightly from the official website of Czech parliament.”
Now the team will focus on main functionality of WTT site and ensure that the list of office addresses and constituencies associated to the right representatives, as well as contact details of MP’s is complete and ready to use.