Developer

An open letter to Paul from witespy

Hi Paul,

I don't know if you know me. I'm a lead developer for the ardupilot project. You know, the project that you just accused of not being open source in an interview on http://thecrashcast.com/. I write about half the code for the project, so maybe you've heard of me.

If you've been following my work for the last 4 years on ardupilot then you would know that I'm generally a pretty mild mannered person. I try to keep my posts polite and helpful, to generally raise the tone of diydrones and open source projects in general.

Well, you better don your asbestos suit now, because I also have a rarely seen darker side. Just occasionally someone does something that pisses me off so much that I get really really annoyed. Your recent actions have done that, so here comes a flaming.

Some background

A real flaming doesn't generally come with a background introduction, but hey, I still have a mild side too (despite the fact that I am seething with anger at you right now), so why not.

I'm a long time open source developer. I started contributing to open source in the late 80s. There is a good chance that when you read this letter the bits are getting to you via computers running open source code that I've contributed to. On the wall behind me is a Free Software Foundation award for the advancement of free software. I teach a masters course on how to build and contribute to open source projects. I'm not an open source newbie. Perhaps you should have checked before making outlandish claims about ardupilot, a project that I've put my heart and sole into for so long?

I've been working on ardupilot for 3 and a half years now. In that time I've contributed over 5000 patches to the project. Given your amazing statements on the crashcast podcast and on your website about you being a defender of open source I expected to see your name in the contribution list. Strangely enough, it's not there. Did you use a pseudonym in all the contributions you have made or did you just accuse a project that you have no association with of not being open source?

How Open Source Works

As I describe in my course, open source is different for different people. Me, I'm a free software radical. I like everything I do to be FOSS (free and open source software). If I can't do something with FOSS then I see if I can write a FOSS tool to do it, then distribute it to the world. As a result I've started about 30 FOSS projects over the years and contributed to dozens more. I'm such a radical that many people in the FOSS world (including Linus Torvalds) have accused me of being too radical, and pushing the "free software or death" line too hard.

One of the big misunderstandings about open source is the insane and self-serving idea you have been pushing that the ardupilot project is somehow required, because of open source principles that you somehow fail to explain, to provide your company with binaries of our software that work on your board. That is utter and complete drivel and rubbish. You're wrapping yourself up in the open source flag while not even having the faintest idea of how open source works.

Open source project leaders can choose which hardware they support. As a lead developer of the ardupilot project I have chosen to try to make the code work on as many boards as possible. So in fact the firmware.diydrones.com site (which I maintain) does provide firmware that will probably work on your RTFHawk boards. I've also worked with people who want to port ardupilot to completely new hardware platforms. Did you notice I merged in support for Flymaple boards a few months back? Did you notice I merged in support for the VRBrain too? Did you notice the work I've been doing on porting ardupilot to the BeagleBone?

I'm guessing you didn't notice any of that or you wouldn't be making such grandiose and idiotic claims about ardupilot not being an open project.

So here's the deal. Open source project leaders get to choose what code they accept, what code they write and how the projects get managed. Really basic stuff really. I have chosen to make ardupilot widely portable and flexible, but I didn't have to. It would still be open source if I wrote the code to only work on one brand of board.

Michael Oborne is the project leader of the MissionPlanner project. He has done an awesome job building up MissionPlanner from scratch, and making it a GCS that people love to use. As the project leader for MissionPlanner he gets to set the policy. If he wants it to only load firmware to only blue boards with pink edging that have butterflies embossed on the PCB then that would be his right. I might give him some odd looks if he did that, but I'd defend his right to do it.

Because MissionPlanner is an open source project you can make it do something different if you like. If you don't like what it does then why not try something really radical like talking to him (you _did_ talk to him before accusing him of heinous crimes against the open source world? right? yes?). Hey, you could even send him a patch! Now there is a radical idea. If that fails then you could fork MissionPlanner and make it do what you want it to do. That is the fundamental succinct definition of open source after all - the right to fork. You have that right, even if perhaps you don't deserve it after all you've said in recent days.

Why do we work closely with 3DR?

If I were to believe the crap you said on that podcast then it would seem that I'm held hostage by 3DRobotics. Help, I'm an open source developer being supported by a hardware company that uses my software. Oh no!! Help me get out!!

The fact is the ardupilot developers work closely with 3DRobotics because it benefits the project. Think about that. We choose to work with them because working with them advances the aim of producing the most awesome free software autopilot that we can.

I regularly get asked by Craig Elder from 3DRobotics if there is anything he can send me to help me with my work on ardupilot. If I say "well, I fried my last Pixhawk while testing the power handling to its limits" then he pops a couple of new ones in a fedex pouch and sends it down to me in Australia. It's great!

They even pay me! I get 100% copyright on all the work I do, I get complete discretion on what code I put in and I get paid to do it. Yep, open source developers can get paid!

In fact, most large open source projects have lots of paid developers. Ever heard of the Linux kernel? Last I heard about 80% of the code is written by people who work for hardware companies that benefit from the project. This is normal. I've been paid to develop open source software by numerous companies for 20 years.

The main difference with 3DRobotics is that they are one of very few companies who have been enlightened enough to pay the ardupilot core developers. In the case of Linux there are hundreds of companies that have understood open source enough to pay the core developers. Chris Anderson from 3DRobotics saw that pitching in money to pay the people who have been working on ardupilot for so long is a good thing both for the ardupilot project and for 3DRobotics, so he did it. Now you throw that back at him and try to use it to accuse him and 3DRobotics of being some evil company perverting open source. What sort of insane logic does that stem from?

I looked in my letter box today and I didn't see any hardware from you. I bet if I talk to all the other ardupilot devs they would tell me you didn't send any hardware to them either. I haven't seen any code from you. Yet you get up on your high horse and try to claim that we owe you something? Please just crawl back into the hole you came from.

That OTP thing

The thing you have built your edifice of open source outrage on is the way that MissionPlanner checks the OTP area of Pixhawk boards and doesn't load firmware unless they match a particular public key. I have stated publicly that I don't like that behaviour. I have also made it clear that it is Michael's decision as project leader for MissionPlanner.
I have been working with other developers to try to come up with a better solution. That is how things are done in the open source world. Contributors to projects tell the project leader if they don't like something the project does and the project leader takes their ideas into consideration. Ultimately the project leader (Michael in this case) gets to choose.

So we agree?

You might think that because I also don't like the current OTP mechanism that we are in agreement. We are not. I wouldn't be flaming you in such a long winded fashion if I agreed with you.

You are taking advantage of the OTP behaviour for your own ends, and those ends have absolutely nothing to do with protecting open source.

Let's have a quick look at your actual behaviour with regards to open source and your RTFHawk project. Given your rabid defence of open source I presume you've read the license of the projects you are criticising so loudly? It's the GNU GPLv3. I happened to be on a committee that helped develop that license, so maybe you don't know it quite as well as I do. Here is a refresher. When you distribute binaries that are built from source code that is under the GPLv3 you need to (among other things) do the following:

  • make the recipients of the binaries aware of their rights under the GPL. Have a look at firmware.diydrones.com for how we do that
  • offer the source code to anyone who asks for it (which is why making them aware of this is so important)

So, let's see. On your website you have a binary copy of MissionPlanner modified to upload firmware to your board. Do you tell people who go there that it's GPLv3 software? Do you link to the source code? Do you offer the patches you've done? Nope, nope and nope.

What is more, you are wrapping yourself in an open source flag and trying to use that flag to sell your clone boards. You do this by criticising 3DRobtotics, a company that has done more for open source autopilots than any other company I know of. You are doing this as a company that has, as far as I am aware, done absolutely zero to benefit the ardupilot project or MissionPlanner that you are criticising.

So what now?

First off, go read up on open source. Read some of ESRs essays. Read the FSF site.

Then go away. One of the things a open source project can do is ignore people who really piss them off. You have really pissed me off. I would not accept a patch from you in future, even if you ever could be bothered to get off your ass and make a real contribution.

I will accept patches from other hardware vendors, and I look forward to working with other hardware vendors who make boards that run ardupilot, just like I have done ever since I got involved in this project. I love working with any hardware vendors who make great autopilots and who want to work with the project. I will do it regardless of whether they contribute money or hardware, because I love to see the platform grow. I won't however work with you because you have decided to start off the relationship between your company and the ardupilot project by insulting it and using those insults to further your own aims. So congratulations, you are the first company that I have banned from working with the ardupilot project, or at least working with me on it. Maybe you'd like to put that on your website?

Time to get some sleep.

E-mail me when people leave their comments –

You need to be a member of diydrones to add comments!

Join diydrones

Comments

  • @Bill Bonney: You wrote: " ....its a feature of 'NING' the hosting platform."

    As someone who has been on-line since 1980 (in the 300 baud days...) and all through the Usenet years I can say with considerable experience if not authority that this "Ning" forum "platform" is a total, utter, worthless and even dangerous POS.

    Apparently people don't realize the terrible effect this garbage forum sofware has on a community like ours. A great deal of technical trouble is directly caused by not being able to communicate clearly and efficiently, and maybe just as bad the chaotic forums/blogs (they are not of course "blogs" in the sense that word is used anywhere else) are directly to blame for all sorts of social misunderstandings and unnecessary nastiness.

    When CA founded this site maybe it was OK for a while, when there were what, 10 visitors a day, but it is completely ridiculous now. It is hard to imagine what the reasons might be for continuing on with this, except that it does a good job of hiding problems and unhappiness with associated products, as everything, good and bad, sinks into a pit of darkness that only obscure, specialized Google searches are capable of illuminating. Couple that with ineffective, random "moderation" and the really stupid "feature" of not being able to PM someone without first becoming their "friend" and we have a huge landfill-like pile ... it's certainly worth prowling, but at a very high cost of time, risk of getting bad information, and even lost friendships. I think now even inexperienced folks are starting to instinctively get a nose-full and are starting to look elsewhere for information.   

    Maybe you developers and other inner-circle folks who regularly communicate via Skype conferences and other actually functional methods don't realize just how awful it is when the only connection to the community is via this Ning crap. Maybe CA or you or Randy or whoever should try using only this for a week or so, and see what it's like to try to bring up what someone was talking about a few days ago. Try reading through a 50+ page "blog" to glean a few critical details about a firmware release. And so on.

    Bottom line: Chaos and confusion, sometimes severe, will continue until this is fixed or the community moves elsewhere.

  • Drone was going too far that is so true...no one else was like that...ok,I maybe deleted few of my posts around here because I considered them stupid and bad written...also I can agree with posts stay as it is originally....replay button I like...

    P.S my non 3dr radio is working now, and that has nothing with SD card, but with me uploading wrong settings. There is lag when connecting to PC but Andropilot on my mobile phone is perfect and lightspeed...

  • Developer
    If you have a problem with your hardware from 3DR contact help@3drobotics.com.

    drone tends left the site and deleted his own posts. The mods approved him, and let him post, until he went a bit far and was asked to tone it down. His response was to delete all his posts. Monroe did the same thing, deleted his account and posts. Not the mods

    Post to comments on blog posts are deleted mostly by the original poster of the blog (when they don't like the comment) this is considered poor form*. The mods cannot stop it as its a feature of 'NING' the hosting platform.

    As long as it doesn't contradict the TOS, you can post anything, even criticism. The problem is that people are pointing fingers at mods when post disappear, when the fingure should be pointed at the original poster. It would great if posters could not delete posts at all.

    *poor form = not good
  • Also I would like to know why some blogs do have 15 min edit button and some don't?replay button too??

  • Also,I do understand banning Drone Savant and his rants when he go too far in acusations,but I really think Crashpilot should not be banned as he try to be realistic every time.....nothing too much,just a normal rant..or is it not allowed to criticize anything on 3DR??!Is this why we remowed all the problems to the forum so new users wont see problems in much more popular blogs?

  • Bill, If you are talking about Crashpilot I understand him perfectly,what part you do not get it?

    also I have a question?my NON 3dr radio (rctimer) is stopped working since I install 1.3.1 Mission planer,2 days ago it was working except it was slow like in Marco video

    https://www.youtube.com/watch?v=ZrihdM0txdw

    did something change?

    DO I REALY NEED TO HAVE ORIGINAL 3dr RADIO?Ground model is working,but air module do not, even if I save settings with FDTI cable...

    all this starts happening since I was forced to erase Log files from SD card(original)!!!bcs my Pixhawk could not arm....exact problem is decribed here

    http://diydrones.com/forum/topics/pixhawk-connection-problem?commen...

    Do I have to exchange my original SD card wich came with Pixhawk?

    Is this award for those who rush and buy early pixhawks?!

    Who will pay for new SD card wich will work?! 

  • Developer
    @crashpilot: I'm sorry. But your post reads like somebody who has an axe to grind based on something nobody else understands. Maybe you can explain?
  • Well I understand 3DR all good and cloners all bad because they just take the cream and not giving back - especially dollars. Tridge I partly understand your rage quiet well and don't want to dimish the support 3DR has given you to actually achieve that but I think your view of the medal is very singlesided. I've cross read most of the google discussionforum follow up on that topic and I've seen personal emotions going up. I really don't want to dive into that topic and the details of the licenses involved - because I really have no expertise in that field and I am no lawyer and don't feel like wasting time with it. Did you ever see the 3DR CEO Chris Anderson talk on video promoting his company 3DR? Well, after all his very questionable informations, wouldn't you get the very deep impression that arducopter is an truly open project that makes you go down the hardwarestore, buy the parts solder them up, put the soft on and have a flightcontrol that brings award winning capabilities to your model? Well, I don't know what you think about open development, but that is exactly what I think of especially after watching you CEO's talk. Build something with supplied plans and put the soft on it and fly it. I think that is the basic idea of every open hard and software development (not knowing the licenses), if you have some cloners taking over the plans/soft whatever for profit you will never see you will have to take it with a grin because you choose to go that route for the benefit of all people / users and you already profited it by yourself - you can still have a donate button to keep you rolling. But it isn't that harsh is it? Cloners (even that *all so bad guy* talked about here) are asking for licenses and want to share money - aka contribute back. I think it's just a play of greed after all said and done and not about contributing to some community. Let's face it 3DR is all about money - if it wasn't it's till they round up investors. 3DR has never been about quality - remember those esc that even the chinese didn't want to sell - 3DR sold them. Is having a money ruled "open" source/hardware project entirely good for the commuinty / users? I strongly believe not. Let aside the censorship that is happening on this webspace that got me banned as well for weeks after a consensus of some unknown committee there are some other things that might be of public interest. First of all you wouldn't even get executed in Nazi Germany without a fake trail mentioning the people involved as a normal citizen - diydrones forums seems to be different in this regard - you get discarded for weeks by saying something that could possibly harm 3DR sales (being off topic, being impolite, by that reason Tridge, Levebre, Monroe would have been gone FOR LONG) and will NEVER GET TO KNOW THE NAMES OF THE PEOPLE INVOLVED. So face it this forum doesn't care for basic rights if they hurt their sales. So back to topic, why is it bad to have a company competely pay off open development?

    - It isn't open anymore - obviously - like this censorship forum. (Where are the posts from Drone Trends?)

    - Company will passively & actively block cloners/not 3DR buyers on purpose (not updating hardwareplans - obscure changes, watermarking). That procedure may be within the statutes but writing opensource and openhardware big on the banners and at the same time introducing constrains of this kind is unprecedented in the opensource flightcontrol arena.

    - Company will push things ahead too quickly to rival competitors, skipping low level errors so a plethora of copters are bound to crash. Project has no time to mature.

    - Company driven forum mutes critical voices / deletes users at will. Doublemoral needs to be protected and obscured for potential buyers.

    - Company will completely lead the way, other development ideas that are not in concordance to the profit goal are ignored (like ironing everything out on the 8Bit platform and then moving on to 32Bit.)

    - The project is not self sustained. Decisions are not made for the users but in favor of one company and its' investors - and they are not always in line. Watermarking motors/esc/lipos/flightcontrols and excluding or blocking 3rd party parts users is something such investors would like to see to maximize profit. Taking now back a step doesn't mean that the company will not do two steps in the future at once. I wonder when we will see esc that can read out a chip in the motor to check the brand. Doublemoral? No way, just protecting users from evil sellers... and that's the main spirit of open source for sure...

    - The shopsite will not inform the users about actual warnings or shortcomings in Hard- & Software. They are lucky if they stumble about a thread before they crash. An overview over hardwareissues over the hardware revisions is missing in the shop. Error culture is missing because it will hurt sales (claiming to have a flawless flightcontrolsystem that can be flown by kids).

    What now? I guess i will be deleted but nevermind that post will live on pastbin and googlecache.

  • "One chops the wood, the other does the grunting."

  • Well, It's good to see the discussion being continued in a reasonable and intelligent fashion with a conciliatory tone on the other board.  We are so thin on the ground we can't afford to fight to much.

    I don't think that (this) Paul is in too much trouble because, as yet Tridge has not written any code.

    My friend, Dan Shearer, points me towards a previous episode when Tridge felt the need to express himself in Perl...

    The immortal line is     if ($i == $OS) { $Msg =~ s/Paul/Oops/mg;}

    The code is here: http://ftp.samba.org/pub/tridge/paul.pl

    Classic.

    The internet never forgets.

This reply was deleted.