 Okay, back in 1973 there was a psychology experiment conducted by two researchers, Lepper and Green, who asked some children to make some drawings. Has anyone heard of this famous experiment? Okay, so they rounded up about 50 children who liked drawing. Okay, in colouring as well, drawing and colouring. They divided them all into three groups. Children in the first group were told that they would now get paid for colouring. In the second group the children were going to be given a surprise reward after colouring and the children in the third group were not going to get anything. Now, they separated the children into individual rooms and let them draw. After drawing the children in the first and second group received their rewards and the children in the third group got nothing. Then over the next week they continued to bring the children back and let them do a little bit of drawing each day. They monitored the amount of drawing the children did. The children who had been promised a reward for drawing did substantially less drawing in the subsequent week than the children in the other two groups. The children who were given a surprise reward after drawing and the children who were not offered any reward at all did substantially more. They continued to do drawings because they enjoyed drawing. The children in the first group who had been offered a reward basically slowed down as if they were waiting for another incentive to be offered before they would start again. I bring this example up because we're talking about bringing money. When we're talking about crowdfunding we're talking about bringing money into communities where we have people working professionally and where we have people working as volunteers. We're here on a Saturday, on a weekend. Some people come here as part of their job. Other people come here because they enjoy being part of FOSSTEM, part of Debian and part of the wider free software movement. So it's important to talk about the impact that money has before we talk about crowdfunding. When I was about 10, I used to draw. I was actually packing up my grandparents' house last month and I came across a drawing. I stopped drawing myself at about that time not because of money but because our family got a computer. By the time I was 12, I was programming assembly code and by the time I was 14, I was getting my amateur radio call sign. So I stopped drawing for different reasons. Nonetheless, those other activities like computer programming and amateur radio, some aspects of those I've done professionally for many years but there are other things like the amateur radio that I've never received any financial incentive for. I continue to enjoy it in the same way that I did when I was a child who didn't have to work or think about money at all. I don't think I even had a bank account when I was 14. That's when I started doing electronics and radio. Fast forward to 2011. Smartphones were really taking off back then. Many people were asking me, do you have Viber? Do you have WhatsApp? Can we communicate with you through Skype? I wasn't really interested in trying any of those things because they're not free. My interest in communication technologies was reinvigorated. I forked the SIPDROID project, which is an app for Android. It created my own project called Lumicall aiming to do some of the things that you can do with Viber and WhatsApp. One of the main features is that when you install it, it links to your phone number so it sets up your account very, very quickly. Many of the free software apps that you install, either on the desktop or on your phone, expect you to set up a server or to go out and get a SIP account, which all takes extra effort. This is one of the reasons why a lot of people are not using them. When I made my Lumicall project, I aimed to have that simplicity that had made apps like Viber and WhatsApp so successful so quickly. I launched the first version of Lumicall at FOSSTEM in 2012. Since then, I've been tinkering away at Lumicall in my spare time, basically fixing things when I need to fix them for something I want to do myself. I haven't personally done any paid development on Lumicall. There are many other projects like this that people have been contributing to them as volunteers. Other people develop them as part of their job. There are some companies that have been willing to sponsor projects like this. Google has very generously sponsored many students in the Google Summer of Code. They also spent $60 million acquiring the WebRTC code, which is in the Chromium browser, and that's all free software now. A lot of these different things have been going on in the last five years. There are a number of other alternatives to Lumicall now. There's Signal from OpenWhisper Systems, which also aims to have a big emphasis on security. There's Ring, which aims to offer a distributed hash table, peer-to-peer experience. There's Conversations, which is an XMPP chat app for your phone that's extremely convenient. At the same time, as all these things have been emerging, there's also been more and more public debate about privacy of digital communications. In fact, the debate got a lot of attention in 2013 when Mr Snowden started leaking documents from the US government. Some of the stuff that appeared from Snowden is very, very concerning, but when you think about it, the private sector is often a lot more efficient than the government. So everything that you've read about the NSA, you can assume that companies like Facebook and Skype are doing three times better when it comes to monitoring people and analysing their data and finding ways to use it for their interests, which are not always in common with your interests. I mean, when you think about it, Skype is a lot like its sausage. If you knew what was inside it, there's no way you would eat it. One thing that's been obvious to me for a number of years now is that developing an app like Lumicall is not something that I can completely do on my own. There are some things like testing on multiple smartphones that is just impossible because every year there are thousands of new phones. There are new versions of Android. Users report bugs that I have no chance of reproducing on any of the phones I have myself. So for some of these things to ever be analysed by a developer, we need to take another approach. I mean, there's an example of many of the different phones that are out there today. These are a little bit old now, but it makes the point. There are just so many phones out there. It's impossible for volunteers to keep up with them all. The communications space services multiple use cases. In these photos that I've put up here now, you can see on the left-hand side, you've got private communications with family members or with people that you have a very trusting relationship with, like your doctor or maybe your tax accountant. On the other picture, you've got big business. You've got organisations, you've got governments, government departments, universities and hospitals. Their needs are very different from the needs of private individuals. So when you make a call to your mother or to your spouse, you know exactly who it is you want to talk to. When you call your bank, you've got no idea who's going to answer the phone. So securing these types of communications is very different. The volunteer and community development tends to take a bigger interest in the private communications that we have with our friends and family. After all, why would we spend our weekends developing things to meet the needs of big business? But nonetheless, big organisations also have to use communications technology and we do have to communicate with them. I mean, 20 years ago, many big businesses and government departments and what have you were using fax machines. When email became viable, they all threw their fax machines away. How often do you see a fax machine these days? Many small businesses don't have one at all and they just use email for everything. Nonetheless, email provides an interesting example. It's a federated technology. It's very different from, say, a peer-to-peer technology such as Ring. Adrian was here talking about Ring before. And this is a solution that's great for security of private communications but it may not be very attractive to businesses and organisations. So they're going to be much more interested in federated solutions like SIP and XNPP. So making these sorts of solutions viable for big organisations raises some interesting questions. If they don't have free solutions based on open standards and free software, there's a big possibility that they're going to go with proprietary solutions. How would you like it if you had to use Skype or something similar to call your bank? If you were forced to use Facebook to communicate with some organisations? I mean, you can already see there are some app developers like Tinder who are insisting you have a Facebook account to use their service. They haven't yet seen banks going down that path. But in five years or ten years, what will the world look like? What will big organisations expect when they communicate with you or when you communicate with them? The US government has recently been talking about insisting that people applying for the visa waiver program have to give their Facebook address. So these sort of things are starting to appear and if we don't have free alternatives, the alternatives that are proprietary are very, very scary. So this is why I raised the topic of crowdfunding. Who does SIP or XNPP or other development on a professional basis? Who is part of their job? Okay, so many people. So we already have money coming into this space. So we're not necessarily going to run into the problems that Lepper and Green encountered when they started giving money to the children. People are already doing development in this space and releasing code that's free. You've got huge projects like Asterisk, FreeSwitch, Camillo, Jitsie. And a lot of them have been developed with money from organisations. But a lot of the money that's coming into these projects is not placing an emphasis on federation or interoperability over the public internet. They're only looking at replacing their internal phone system. So crowdfunding may be able to lift their attention on the federated solutions in this space. Nonetheless, there have already been some crowdfunding initiatives. Freedom Box appeared in 2011. They went on to Kickstarter and they raised $86,000. They've been making a little bit of progress every year. But they're still not at the point of releasing 1.0. It's still not a complete solution. It's a very exciting project and it's having a really positive impact. But after five years, the problem has not been solved. Diaspora raised $200,000. They've got maybe 600,000 users now. But they still haven't quite delivered everything that was promised in their crowdfunding campaign. And that was also over five years ago. So people are starting to look at these types of campaigns with a lot more scrutiny. Saying, how long will it take to deliver? What if something goes wrong? I mean, there was an example that appeared recently. It was the Peachy Printer. It was a 3D printer project. Did anyone hear about Peachy Printer on Kickstarter? So they raised about $500,000. That's more than double what Diaspora raised. And they just wanted to produce a 3D printer. With the money went into making a house for one of the developers instead. Leaving the other leader of the project and all the donors a bit upset. The project is now bankrupt. There is no 3D printer. There's a house. So this question of accountability is getting a lot of attention now. So I've been thinking about this. How can we make sure that projects don't go on and on for five to ten years? How can we make sure that people don't just run off with the money? And how can we make sure that donors have the confidence to put money into a project knowing that these things won't happen? So there are two points that I've identified that can help this. One is to make concise deliverables. So rather than having this goal of let's replace Facebook, which sounds great, or let's replace Skype, we come up with some specific targets. Like let's make a library that can help match phone numbers to SIP users or phone numbers to XMPP accounts. So that's a much more discreet objective. And it still helps us move closer to the goal. There's a list of these things that we can deliver that are easy to define and easy to determine when they're complete. And the other point is putting all of these into a project management tool like RedMine. I mean, there are other tools as well, but I've picked RedMine in this case. Because if we put them into a tool like this, then we become very accountable. The whole thing is very public. People can see exactly what we're going to do, who's going to do it and how much progress they're making. Now RedMine also lets us do other things beyond dealing with this question of accountability. In this screenshot, there are a few little things I've demonstrated here. Many crowdfunding platforms have a concept of different thresholds. So for your first $100,000 or 100,000 euros, you're going to do your core deliverables. And if you raise double that money, let's say you raise $200,000, then you're going to do some additional things. So we can go through each of the deliverables and identify which one of those thresholds they're associated with. We can use one of the custom fields, a pull-down menu, to classify them like that. That makes it even easier to manage one of these campaigns. We can also use custom fields in RedMine to help cost the project to make sure that we're able to deliver these things within those thresholds. And there are three fields here related to costing. Time estimations are useful for some types of development work. Some things have a fixed cost. Let's say that we need to develop a user interface and we've got a developer who's going to do that design work for a fixed amount of money. So instead of putting in hours, we can put in the fee that that developer is willing to be paid for that work. And some things have a percentage cost. When you're looking at platforms like Kickstarter, there are actually a lot of different fees. Things like the crowdfunding platform has their fee. The credit card companies have their fee. You might have taxes that you have to pay. If you're dealing with more than one currency, you've got fees for converting the money. And those are usually percentages. So I've added another custom field for percentages. And so we can put all of those things, including things like the credit card fees into RedMine as a separate project item. And then put in one of these three different measurements so that we can build up the total cost of the project much more accurately. So it's not guesswork anymore. Another thing that I've added in here links to external bug trackers. So if one of the things that we're aiming to do in a crowdfunding campaign is part of another project, such as Camillo, we can link to their bug tracker for that issue. And if there are wiki pages or other documents, we can link to those as well. And that makes it much easier for people to follow. Looking at that previous screenshot, again I've also added tags. So this is an issue that's tagged for SIP and XLPP. And we can look at lists of issues with each of the different tags. So these are issues tagged with Java. So I've made a Python script that extracts things from RedMine. So there's already been development on this in making the reports and extracting the issues from RedMine and building reports for every tag. So these issues are tagged with Java. So that lets Java developers see things they could potentially work on. This was actually really useful. This is in Google Summer of Code last year. I asked the students who wanted to do projects to look through the issues based on the programming languages that they're familiar with. And so this came in really useful even before we started any crowdfunding discussion. I've also been able to tag them with use cases like hosting. So for a crowdfunding campaign to gain momentum early, you need to have a few people who are going to step in on day one and throw in some money early on. These are the people who often come in with $1,000 or $5,000 on the first day. And then other people come and follow that very quickly because it gets attention, it appears on slash. So for something like this to go ahead, one thing I need to do is to identify organizations that might want to sponsor something like this before it's officially announced. So if anyone here has any ideas like that, feel free to come and speak to me or email me afterwards. Another topic that comes up with many of the crowdfunding platforms is gifts and rewards. What do you offer people as an incentive to be one of the early donors? I mean, one of the most successful musicians on the Kickstarter platform offered people the opportunity to come to a party in Berlin and write on her body undressed with textures in the middle of the night. She raised $1.2 million for creating an album, which is much better than she could get from any record company. But can you imagine people queuing up to write on a naked hacker? I mean, I've got some concerns that is this a too big a sacrifice to make to develop solutions to help people with privacy? So what sort of rewards are useful for this type of software project? When you're talking about crowdfunding for a software project, everyone who donates is going to get the software anyway. So the rewards are always going to be more trivial than the product you're producing. This is unlike all the other projects that you see like the 3D printers and hardware projects and games and things like that because there, when the company produces it, you still have to pay for it, even if you donate it. But with free software projects, everyone's going to get it as a reward anyway. But you still have to offer something else as a gift. So if you've got ideas about gifts that would incentivise people to donate to something, then I'd also love to hear about that. One thing that comes up is sometimes a sponsor steps in and gives some sort of a gift that they can afford to give or stock they have left over and this can make the campaign a lot more productive. So just think about it. Would you like to be able to call family and friends with free software this Christmas? And if we do something like that this year and it succeeds, then that's very, very possible. But if something like this isn't done and if we don't try, then another year we'll go by where organisations like Skype and Viber and WhatsApp will become stronger and free software will have even more difficulty getting into the market share. Any questions? I think we've run out of time so we're going to go straight into the next session. Have you got communication with the... He has been in touch with a lot of things. We will do something. First of all, thanks Daniel. Also for helping.