 Now, I pretend to use PowerFox for everything. I'm going to talk about how to save democracy. Yes, by a little way. So, welcome everybody. Thanks for coming. I personally love the LCA conference, and so it's great to be here, and I'm very pleased to be able to talk to you about this. Thank you for coming when there are other great talks up against mine, so I'm pleased you're here. So, talks about what I've been working on, a vain, pun intended attempt to save Australian democracy with a little bit of JavaScript. So, that's me. I do Twitter a little bit. Concrete Gannett's the handle there. I live in Melbourne. I'm a developer. My day job is working for coherent software. I'm a director at the moment of Open Source Industry Australia. I'll be saying something about that at the Lightning Talks. And one of the things we work around is an open source project open for business, OFBs. It's an Apache Foundation project, and my company's customizing and Australianizing the OFBs code from the OFBs project as a large part of what I do. So, here's a thought. Here's where we start. A grasp of tiny little dollop of science. You can hold it in your hand from the first dog on the moon comic strip. So, here's the problem. Political parties are suggesting how we should vote. They're giving us how to vote cards and so on. And often it's hard for us to work it out for ourselves. So, we don't. Which means in the end we're just being told, doing what we're told by people seeking political power. So, the question is what could possibly go wrong? So, a crash course in Australian elections, if you want to look in the Wikipedia article at the system that we use, it's called a single transferable vote. So, that's the thing to look for to get more detail on how a voting system works. I'll just say a little bit about it here. Most of us, I'm guessing, are Australian voters. We number off boxes for different candidates. One, two, three, four. If we're voting in the lower house for our state governments or for the Australian House of Representatives, then we're voting for one candidate. And it's a bottom-up process, eliminating candidates with the lowest number of votes and their preferences are redistributed to others until we end up with a majority. For the upper houses in most Australian states, we're electing multiple members. So, not only is there that bottom-up process, there's also a top-down process. There's a quota by which one candidate is elected and any votes they receive in excess of that are distributed to other candidates. So, there's both of those things going on. So, you can get detail on that if you want to. In many of the upper houses, we have this above-the-line voting system. So, parties submit they're called group voting tickets. And the effect of this, and not everyone's aware of this, the effect of this is that the complete preference list has been pre-chosen for you. So, people have the impression that they're voting for a party and you're not. If you're voting above the line, they've filled out all the boxes for you across the entire ballot paper. In effect, it's like sending somebody along to the golf club annual meeting and saying, I'm giving you my proxy. You put in a vote for me. So, you've handed over your vote to a political party. It's not the case everywhere you can see. New South Wales is not on that list. New South Wales state election coming up. And their system is slightly different where when you're voting above the line, you're basically just voting down one column. So, it's different New South Wales. But for the Australian Senate in particular, they're filling out the entire ballot paper for you. What makes it even more fun is that parties can submit two or even three different tickets. And what happens if you put in above-the-line vote for that party is their votes are divided up in half or one-third, one-third, one-third. Now, it's a minor thing, but if a party has received, let's say, a million above-the-line votes, or a million in one, then that means that there's an odd one vote that gets done one way or the other. So, quite literally, the electoral commission generate around a number. They, in effect, roll a die to determine where that last vote goes. And it's only one out of a million. Let's say, trivial effect, but I'm still uncomfortable about that being part of the way that we count votes in our electoral systems. I'm personally uncomfortable about that. So, here is a picture of the Senate ballot paper with the above and the below-the-line thing. And in their example here, they have just voted, so you can just put the number one in a box above the line, and the effect is, as we've said, that you fill out the entire ballot paper. And you do have the option, if you prefer, to fill out all the numbers below the line. What really got me going on trying to work on this wasn't what I've said so far about above-the-line stuff for upper houses at all. Rather, it was the council elections, which are now two years ago in the state of Victoria. And this is what I saw in several places near me. So, in the city of Kingston, there were 28 different candidates. And council candidates don't have the same budgets for campaigning and so on, so you've never heard of them before. What you get is an information pack in the mail, and it's got a policy statement of a few paragraphs for each of these candidates and a little photograph, and they're suggested how to vote thing. And you're supposed to pick through in this particular place at least 28 different candidates. Only there weren't. If you looked more closely at what was going on, you could see that really there were only two or three candidates. What was happening for the rest of them is their policy statement was pushing one single-issue button. And what you needed to look at was where the second preferences were going. And there was a real funnel effect. And you could identify, if you looked a bit more closely, at what they were asking you to do, that who the real candidates were. There was a very decided funnel effect, but it's difficult to see. If you're just looking through the policy statements that you see, it's not immediately obvious. And so I was looking for a way to visualize that a bit more effectively. So at the time, I was saying, look, if only I could draw a picture of that stuff, I could send it into the local paper and surely they could publish that and that would give people a clearer idea what was going on. So it's taken me a while. I didn't do anything at that time. We've got a similar effect with this above-the-line stuff in the Senate and the upper houses in state parliaments where we've got single-issue button-pushing micro-parties. There's a couple of examples of them there, which many of us are familiar with. And the effect of the system we have is there's an incentive for more of these micro-parties. The more we get a tablecloth ballot paper, the more daunting it is. So most places around Australia, past 90% of people do vote above-the-line because it is quite difficult to do anything else. And the harder it's made to vote below-the-line, the more likely it is that people vote above. So I've talked to people when I've been talking about this project where they walked into the polling booth with the intention of filling it out below-the-line. And when they saw the thing, it was just too much. So that's not unique. That's a genuine ballot paper, and it was the same around the country during the last federal election. It was very similar stuff going on everywhere around the country. Genuine ballot paper right there, quite scary. So there are weaknesses in our current system. Many of us choose to vote for minor parties quite deliberately in upper houses on that principle of keeping the bastards honest. So there are many Australian voters that will do something different in the upper house to the lower house. They're more likely to vote for some major party in the lower house and quite deliberately do something different. Our upper houses are supposedly a house of review, and many Australian voters like that idea and try to do something to have that second opinion, that review stuff. So in principle, that's why we have upper houses and principle that's not necessarily a bad thing. These micro parties tend to preference each other regardless of policies. You see very curious things going on. They're doing deals beforehand, and as we've been saying, they're submitting the group voting ticket to the electoral commission where it's all been filled out for us. So because so many of us do vote for some small party in an upper house, one of them is likely to get elected in the end. It's a total lottery. So you really don't know, very difficult to know ahead of time who it's going to be, and you'll have a micro party sending preferences to another one where there's really no policy connection, and they're doing it in the hope that they will benefit and roll the dice, it'll pan out one way or the other in the Western Australian Senate election, the last federal election. There was one point where there was a difference of tens of votes that eliminated one party or another from the camp. So it's very hard to know who'll get up in the end, but the combination of the system we have and the fact that these smaller parties tend to preference each other means that one of them is likely to get elected in the end. Other weaknesses in our system, in the Australian Senate at the moment, in South Australia and Western Australia, you have to fill out the entire thing below the line. You have to vote past. I call it the looty line, and it was so refreshing in the recent Victorian election where I could stop, I think for many of us, there's... Yeah, okay, there we go. You could stop somewhere half or two-thirds or 80% of the way through and simply say, no, I do not want to give my vote to any of these people at all, and that's not really an option. Technically, it's sort of use for the Senate if you've filled in 90% of the thing, if you've got less than three duplicates then it counts as a valid vote, but the instructions tell us that we have to fill out the whole thing, and you sort of kind of do it. You have to get somewhere close to that. So in Victoria, in New South Wales, it's optional, you can stop somewhere in the middle. Another really interesting weakness is that one person at the moment can be an officer of more than one political party and so can therefore submit more than one group voting ticket, and that happened in the last Senate election. There was one person that submitted in the end group voting tickets for four separate parties. So that's a curious weakness in our system. There's nothing to stop anyone doing that. You can be an officer. You can submit group voting tickets for more than one political party. Okay, so to my mind at least, we have a problem and we probably should be trying to do something about that. So there are two things that we can look at to try and make things a bit better. One is actually reforming the system itself and the other is trying to give people better information about what their vote means and where it's going. So the first thing, reforming the system. Written into the Australian Constitution. So at least for the Australian Senate, we have the right written into the Constitution to vote for people, to vote for individual candidates and not for parties. So there are places around the world where you can simply vote for a party list and that's the end of it and that is very unlikely to be the case in Australia it would mean changing the Constitution and Australians are very conservative about changing our Constitution. Most proposals to change the Constitution have been rejected by the Australian electorate and I cannot imagine that this one would ever get up. The no campaign would be very, would connect I think with many people. So just having, let's make it just above the line which would be simpler for people to deal with. I think that's most unlikely at least for the Australian Senate. In the wake of the last Australian federal election where we know there were several micro-parties that got elected with starting off with very small amounts of votes and then getting preferences from others in the wake of that, there was a Senate committee that looked into all of this. So they did their work between December 2013 and May 2014 and curiously there was only a small proportion of all these micro-parties that bothered to give a submission to this Senate committee. That was quite interesting. And here's what they came up with as a proposal. So optional preferences above or below the line. So we were just talking about in Victoria we could stop somewhere in the middle. The proposal is that we could do the same thing in the Senate. So in a typical Senate election we're electing half of our state Senators so that's six candidates, number the boxes one to six, that's all you need to do after that it's up to you. So you could continue through further candidates. If you wanted to, six all you need for your vote to be valid. That's the proposal. New South Wales has got something quite similar at the moment. Voting above the line would be again much like New South Wales where you're just voting down one column for one party. So it is up to you to send your preferences to other parties if you choose to, no group voting tickets anymore. So if you think this proposal is not perfect I think personally that it's still an improvement on what we have at the moment. It all went quiet shortly after this committee finished its work. So there are micro parties in the Senate at the moment and it's quite difficult to get legislation through and it all went quiet I think because there was a decision that we lose the support of the micro parties that are currently in the Senate for the rest of the term of the government and nothing will get done at all. So it's all gone quiet. Nothing's actually been done even though there is a recommendation probably a reasonably good one to do something about things. So I've got this mental picture that perhaps the last piece of legislation that's passed by the current Australian Parliament will be to actually reform this and probably that will get support from the larger party so that would be likely to get passed but the Australian Electoral Commission needs a considerable amount of notice if the electoral system is going to change so they'd need like two or three months notice in order to roll out the new thing so maybe we won't have that time so that's very daunting. We have this imagining that you could imagine say towards the end of the term of the parliament that the two major parties could get together and say for the last six months we'll have an effect government of national unity here's a legislative program we've got broad agreement on things that we'll do and therefore we won't need the micro parties to get anything done up to the election so that would work I just think it's very unlikely that will happen we know that Australian political culture for the last few governments is that oppositions are very much oppositional very much say no no no to everything so I think that's unlikely so we may be stuck with this despite the fact there's a reasonable proposal Senator Nick Xenophon's going to put up a private members bill he's tried once before and that's got rejected so he's going to try again during this year so maybe that's a way that something will happen his proposal is not identical to this but it is somewhat reasonable so reforming the system my bid is unlikely it's sad but it's unlikely in the case of Victorian local governments I've mentioned councils they've had a review as well we're still it's another year until Victorian council elections during 2016 they'll be so they've got ideas which we've got a new Victorian government I don't know if these will be adopted but know how to vote information included with candidate statements and any candidate that happens to be a member of a political party will be required to declare that so slight progress there I think that may happen for council elections so there are things for reforming the system so the other thing that I think we need to look at is better information Ben O'Rice you can see here he gave a talk at the links conference in Perth was anyone there for that? yeah, yeah so this is a website so you can plan out ahead of time your voting intention so the below the line website was very well done it's got links to different parties so if there's a party you've never heard of before you can look at policy statements and make up your own mind about what you think of them plan it all out print out your own how to vote card so you can walk into the polling booth with that all worked out so it's much easier for you to vote below the line very nice piece of work there are two others I've discovered while I was working on this that do do a similar thing I think below the line is the best of them but your mileage may vary but there are two others here that have tried to do a similar thing for the last Victorian state election only the third of them actually did the work to put things up so you can plan things out clue you voted there I assume for the next federal election they'll do the work the below the line codes out there on github so maybe some of us might hack on it sometime okay so these are about planning out ahead of time how you want to vote so once you're aware of these this is certainly a good tool and it's great that these are out there in fact it's good that there's more than one so here's a screenshot from the below the line website so we can see here a list of parties and you can drag and drop and order things with your particular preference in mind and as we said print out your own how to vote card so the other thing is trying to give people better information so if people had better awareness of what they're doing if they could see the effect that their vote is having that's what I was trying to do so as I said I've been thinking of this for a while and I discovered these things they're called force directed graphs and they're commonly used for communicating many to many relationships I've seen sometimes people use the spring word to describe the same thing there are several graphing libraries that provide the ability to do a force directed graph so here's a little example here this is actually all the characters from Les Miserables so there are different clusters there are families, quite a complicated story and what we've got are interactions between different people as the story progresses so each of the nodes, each of the dots here is a person, is a character in the story and there's a line connecting them when there's some interaction between them so of course there are some central characters and there are more peripheral characters that don't have any interaction with characters over on the other side of the diagram so what we've got is we're presenting how closely connected things are by their position on the diagram how close or how far apart they are on the diagram so here's what I've done so it's a website aupref.info and it's using the force directed graphs here so we're looking at one here this is in the Victorian state election it's the eastern region of Victoria scrolly scrolly down here we've got one of these force directed graphs happening if I just zoom down a bit how do we go? I wanted to show you this one first look in the middle there so two things going on one's the force directed graph thing which we've already seen for the Les Miserables thing how closely parties are preferencing each other and what we've got this is an overall view of everybody's relationship to everybody so there's one I've got here from the Western Australian Senate election the rerun one in early 2014 where you can see the Liberals and the Nationals are right next to each other they ran two separate tickets in that election and not only did they preference each other one two that's not surprising everybody else put them in the same spot so somebody that had considerable different policies to theirs would put them towards the bottom but again they were right next to each other and the result is you'll see on that one that the Liberals and the Nationals are right next to each other so we've got you can see different things and I'll show you a diagram in a moment somebody's take on different political philosophies we can see here that we've got more well progressive left-leaning parties in one place and we've got more conservative in another so just how close they are on the diagram is reflecting how much they're preferencing each other the other thing I'm doing is the blue arrows this is the funnel thing I'm focusing specifically on second preferences I think these are the ones to really pay attention to so this is exactly the sort of picture I wanted for the council elections where we would have seen the funnel effect and easy to spot these are really the two candidates so you can see here I've highlighted when there's more than one party collecting second preferences and that by definition is very interesting because the party in the middle can only reciprocate in one direction so there are other people also sending their second preference to one of these parties and not receiving a second preference in return so you expect and it's quite common that parties exchange preferences I'm highlighting here where that's not exactly what's going on so you can see right in the middle here there's many parties that gave their second preference to the shooters and fishers party and guess what they got up they claimed the last seat in the eastern Victorian region of the Victorian upper house so that's one of them eastern Victoria I'll show you a couple of others okay so there is the one for the 2014 election for the Australian senate you know I haven't plugged into I should be there while this is happening not looking good we saw one of them at least so the force directed graph theme to show the if you preference this party here if you give a vote to this party here here are others that are likely to get the benefit out of that zooming doesn't seem to be happening sadly I'm just trying to zoom out a bit other things I want to do with this you can see that we've got some interaction stuff happening here so float your mouse over any one party and it simply numbers off from the perspective of that one party what the other preferences are so you can see that while many of the things close to this one what are they voluntary euthanasia have got low numbers because the overall impression of every party is that there's some similarity between these still there are some curiosities so number two is not immediately visible it's out somewhere else on the diagram so from the perspective of the voluntary euthanasia party they've said their second preference to somewhere else so you can see from any one of these parties exactly what the ticket is so you can look at this diagram overall you can see more closely what that particular party is trying to do just float your mouse over whatever and I've numbered off all the other preferences for that particular party so I showed you for eastern Victoria that the shooters and fishers got up and we saw that with the funnel effect and for these other regions in the recent Victorian state election somewhat of the same deal that you could sort of see here is for eastern Victoria but you could have some idea ahead of time that was likely these parties were going to do well because they were in the middle of this sort of funnel effect DLP is very interesting I think it was western metro the ALP gave their second preference to the DLP it's a different world to where I was a kid second preference would never have happened okay and here's what we sort of saw with things spreading out so this is what there are many different ways to try and think about and talk about political beliefs but the left-right thing is only one sort of dimension on this and so there is one thought if you go looking in Wikipedia there is an article on exactly this political compass if you want some discussion on this where they add a second dimension sort of hippy-libertarian if you're a left-leady or more authoritarian and I think you can sort of see that in the diagram that we've seen a moment ago the data that this is built on is freely available the federal data from the Australian Electric Commission they're very good at this you can get it in CSV there's XML format stuff around as well so here's an example of what I started on to build this stuff and you can see in there first of all, state of Australia for a federal election so this is western Australian data the A is simply the column across the ballot paper so there are groups A, B, C, D the next one is the interesting one we've said that a party can submit more than one ticket so for parties that choose to do that you'll see ones and twos and even threes down that third column and then after that we've got names of candidates and so on so this data is freely available you can hack on it, you can get it in the case of Victoria my first take on it was that it was harder to find and that was because I wasn't looking in the right place eventually I got hold of this stuff XML stuff around if anybody else is wanting to do this sort of work in future I'd suggest you do go looking for what's made available for the media for the press covering this stuff that's where I discovered this stuff I didn't find it straight away I did a lot of manual work that I really didn't need to if I discovered this thing so just a tip, go looking for media stuff that might get you there more quickly there is in fact, you probably know standards, schemers for many different XML documents to communicate different information there is one for this stuff the election markup language EML some more general points about what I've done and what I'd encourage you to think about so Audrey made this point in her talk a moment ago that 21st century graphs have got more movement interaction if you just produce a graph that is a slab of pixels the sort of thing that you must do for the printed page we're really not using our technology well we've got more possibilities than that so one thing here there is a really nice collection of visualization tools for this Swiss website here so I'll give you the URL for my presentation at the end you don't need to make a note of these if you don't want to but these guys start a visualization with a Z in Switzerland they've got a really nice list, many of them open source not all as one more thing I want to show you here the GapMinder website you might have run into Hans Rosling he does he does Ted presentations and so on he's big on health and world development and so on sadly this thing is built in flash I've seen other examples using pure source stuff this one the data is interesting and is quite well presented so I'm showing you this one anyway doesn't mean you have to use flash to do this sort of work so what we have is a graph down the left hand side it's life expectancy in years across the bottom it's income per person so you'd expect there's some sort of correlation between the two and roughly there is the circles on this diagram there's a little world map at the top right and the colours are simply regions so we've got the Americas Asia South Asia East Asia Africa Middle East but the Harry Potter thing what this is doing is playing out there we go that's better okay so playing out from the 1800s where we've got some data here so we can see things are getting better as time goes on so you can see the orange dots are advancing towards the top right for Europe and interesting thing coming up we've got 1914 any moment now look for that there you go so we can see so more recently you can see that the news is getting better also I think you'll find a yes see the ignorance link there really interesting questions to ask haven't got the time to really go into this but Hans Rosling is really big on us knowing what's actually going on so I won't give you the answer to this but you'll find it if you look at the ignorance thing what proportion of children in the world have vaccinations against major diseases you might be surprised I won't give you the answer check it out so this is the 21st century graph thing with movement and interaction we've got real potential with the tools we have now to communicate better my little thing was built on the last of these things down the bottom there so this is called D3 it stands for data driven documents it's a javascript library javascript is not my favourite programming language but I really wanted that interaction so that's what I've been using the main author this guy Mike Bostock he does visualization work for the New York Times and other places as well very active community many people contributing to this there's just a screenshot from that data visualization website so D3 gets a mention here several other things build on D3 so I'll show you a little bit in the moment about the sort of work that I did yeah and we've just seen Gapminer okay so this is the thing that I used it's open source it's got a BSD license so here's this code I've taken sections out of the work that I did so D3 can be used for other graphs not just for the force directed graph that I did so you can see in here there's a function there saying yeah I want a force directed graph and I can see dimensions and so on couple of interesting things here one is charge so you can stop things from overlapping by increasing that charge to make sure that they're kept apart from each other it ticks it iterates to lay things out so I needed to say nothing about positioning in my little graph D3 did that for me so it's moving things around to achieve that effect of things being closer or further apart without me needing to do that work gravity is simply keeping things contained on the page so the cool thing about D3 is it's not an abstraction layer what you're using is pure web stuff you're using javascript you're using HTML to get stuff on the page you're using scalable vector graphics SVG and that's exactly what I did so the circles for my little diagram were just using scalable vector graphics SVG so here's key stuff where I'm telling the force thing that I created a moment ago using D3 I'm saying here's your data here's your nodes here are the connections the links between those nodes and then I've got the thing to set the distance between each of those nodes and that's simply a javascript function so what I did in there in the case of the western Australian data we saw from memory there were something like 38 different parties on that so it doesn't really matter if I've chosen to give you my 37th or 38th that's really not important but 2 versus 3 is extremely important so what I've done is taken the log of the preference number to try and call more attention give more distance or get early preferences closer and it's not such a big deal when we get towards the other end of the scale this is the key thing so I've put in bold the magic of D3 so what I'm doing here first of all is saying it's normal if you're familiar with this it's normal cascading style sheet stuff CSS I'm picking out things that have a style called link and this is very similar to work you might do some of you might have used jQuery very similar to that the things that have a link style attached and when I'm first building up that diagram there will be nothing there and I'm saying here is your data and your data is simply a javascript array and so what the enter is saying is make it so what I want is an element on the page an SVG element with a style of link corresponding to each of my parties to each of the political parties it's way cool when you get into this stuff I'll tell you where to get my source code you can look at this there are hundreds of thousands of examples using this stuff so the thing I really like about this is it's just code you can put together the pieces to say what you want to do similarly here for the nodes for the dots on the graph you can see again here there's the magic enter and I'm saying I want a G which is an SVG thing for here's a bundle of graphical stuff so I've got the circle and other things going on as well we've seen already that you can float a mouse over one of the nodes on the graph and see something happening so there's fairly standard javascript event handling to make that stuff happen so here's an example of the sort of results that you get out of that for the link we just got a line from one place to the other I've already said D3 looks after the positioning not my problem very cool and for the G stuff inside that we've got the little circle for the party we've got the name of this so that's the sort of results of this stuff it's only a few hundred lines of javascript so I think I've already said that very cool so I'd love for you to hack on this if you want to source codes all out there on bit bucket so please have a look I'd love for contributions to this to take it further it's a patchy license the thing I'm working on at the moment and isn't quite done is looking at clusters of parties that very tightly exchange preferences so we can see two and three and four parties that all exchange preferences with each other before we go further so I haven't visualized that yet that's the next thing that I like to do still working on this and of course there's more data out there that I'm not yet using on the site and I'd like to do that as well so what next there's a Queensland election before the month is out Queensland slightly different it doesn't have an upper house so I'm going to look at can I obtain the data it's not closed yet candidates can still enroll so that hasn't hasn't finished yet so if I can obtain the data I'll look at what I can do for the first time for lower house elections New South Wales end of March no group voting tickets for March slightly different I could still do something with how to vote data if I can get hold of that if you're interested in this talk please please think about this guy later on today Michael Cordova is talking about it's not the same thing but any of us interested in Australian democracy and voting and so on Michael has been trying to get hold of the source code to the software that the electoral commission used to actually count this stuff so what happens when we submit our ballot papers is there's a big data entry exercise so particularly if you've voted below the line there's a lot of work there your ballot papers data into twice by two different people and they check to make sure it's right so there'll be some number of errors but probably quite small and then software actually counts the vote so of course it's important that that software is bug free and it would be really nice if we could get independent verification of that sorry so Michael's been trying to get hold of the source code has been denied access he I presume is going to tell us the story this afternoon so I won't say any more about that but if you are interested in these issues then it may well be worth coming along this afternoon just some resources to get more information on these things there are several bloggers that talk about this stuff the second one there is a blogger that does his own counts based on the group voting tickets and so on and estimates of what's going to happen ahead of time and in the case of the last election he was saying one or two days after the election that Western Australia is going to be extremely tight and it was a month before the official count was done and we had confirmation of that so that's a good one to look at if you're interested in more information on this stuff okay the images I've really been knocked out by these images was a German naturalist a century ago that did these so they're all hand drawn I think they're amazing and they were scanned by this guy Scott Draves it's all open source freely available so I'm really impressed by those and the D3 library's got to mention there here's where to go to get the slides for the presentation if you want to do that okay I think we've got a few minutes for questions yes we do, who has a question okay I'll just be able to just go from there we're not allowed to do that we need to have it under recording so just have to thank you, great talk great project I I'm quite excited by D3.js I haven't played with it myself but I know there's a Drupal module for it and I don't really have a question it's more like thanks that was awesome thank you you expect a couple opinions about our voting system I think one of our other problems is that it's not homogeneous there's local councils vote differently to states and then federal yes it's that something that it's just something that you think is annoyance or something that's good or bad it makes it very confusing so when above the line was first introduced there were a lot of people that just put in one number in the lower house as well when you walk into the Victorian election and it's optional and you can stop somewhere in the middle there's the risk that you'll think that's okay when you vote in a senate election as well it's very confusing it would be better if it was more consistent in different places I don't see that's possible I think it's something that we'll just have to live with I don't have a magic solution to it but I totally agree that it makes it more confusing and we want our citizens to be voting to be understanding what they're doing and to have effective votes and variations in different places do work against that I don't have a solution I think it's just something we need to live with apart from trying to educate people a bit more about what it is they're doing variations make it very confusing did you have a look at any other graphing libraries apart from D3? so if you're not really after the interactivity thing, if you're not a massive fan of javascript there's one called GEFFI G-E-P-H-I which is often used for force to read to graphs it's java, I don't know if that's an improvement or not from your perspective certainly another one to look at and so that's the other one that springs to mind that could be worth a look if you know, you want to need to slightly different the other thing I'd suggest is just have a look at the data visualization guys they've got a really nice list of visualization tools we have time for one more question I think a short one if possible okay, so I think that wraps it up thank you very much everyone you also get a nice little gift from Elsie so that's the first session the next one commences at